Fork me on GitHub

git实践

预览

Git快捷

查看git的别名配置
git config --list | grep alias
查看仓库的主仓名
git config --global alias.default-branch '!git symbolic-ref refs/remotes/origin/HEAD | cut -d'/' -f4' => git default-branch

撤销最近的一次提交
git config --global alias.uncommit 'reset --soft HEAD~1' => git uncommit

Git常规操作

git revert HEAD|SHA 撤销提交
git reset [SHA] 丢弃提交 让提交回到暂存区的状态
git reset --hard [SHA] 丢弃提交 让提交回到以前的状态
git reset --hard HEAD^ 可以本地删掉最后一个commit。
git commit --amend -m 'xxx' 替换上一次提交
git checkou -- filename 撤销工作去的文件修改
git rm --cached filename 从暂存区撤销文件
git push --force-with-lease 推送到远程删掉最后一个commit。
git cherry-pick HASH 最后本地恢复最后一个commit。

clone 指定的分支
git clone -b --depth 10
git clone --branch --depth 10

撤销当前分支的变化的步骤,比如你在某个错误的分支的提交了几次时

git branch xx 建新的分支
git reset --hard [SHA] 错误提交之前的SHA
git checkout xx 切换到xx分支

合并多次提交为一次提交

使用merge

  1. 开发分支 fix-5190 ,开发完成
  2. 切到目标分支 git checkout dev
  3. 合并 fix-5190到dev分支 git merge --squash fix-5190
  4. git commit -m '填写你的提交内容'

使用rebase

  1. 开发分支 fix-5190 ,开发完成
  2. git stash -m 'fix-5190'
  3. 切到目标分支 git checkout dev
  4. dev 拉取最新的代码 git pull origin dev
  5. 切到开发分支 git checkout fix-5190
  6. 合并dev到开发分支 git rebase dev git add .git rebase --continue/abort 会持续交替进行
  7. 取出暂存的代码 git stash pop
  8. 提交代码 git commit -m '填写你的提交内容'
    如果多次提交的话,可以使用 --amend来覆盖提交日志,确保安全的前提下可以执行 git push origin fix-5190 -f 强制提交
posted @ 2023-07-12 11:11  KevinAt2022  阅读(19)  评论(0)    收藏  举报