Skip to content
文章目录

常用git操作流程和注意事项

代码 commit 流程

shell
git add .
git commit -m "此次提交的描述"

注意事项: 尽量让你提交的内容和 commit 描述一致

commit 内容修改流程

前提条件: 需要安装好 vim 编辑器

这种修改只是会影响git log看到的commit, git reflog依然可以看到原始的commit

修改最近一条 Commit

shell
git commit --amend

此时会进入 vim 编辑器(按i进入编辑模式,wq保存并退出,q!不保存并强制退出)

修改特定某个 commit id 的消息

git rebase -i commit_id commit_id commit_id...

如下示例: 输入命令 git rebase -i 275b643, 则可以对这个commit id之后的所有 commit 消息进行修改

Merge branch 'xx' into yy 这种消息是无法修改的

这里有几种修改选择:

  • pick:保留该 commit
  • reword:保留该 commit,但我需要修改该 commit 的 Message
  • edit:保留该 commit, 但我要停下来修改该提交(包括修改文件)
  • squash:将该 commit 和前一个 commit 合并
  • fixup:将该 commit 和前一个 commit 合并,但我不要保留该提交的注释信息
  • exec:执行 shell 命令
  • drop:丢弃这个 commit 按照实际需要去选择命令,我们这里需要的是 reword,用来修改 Message。

分支 merge 以及 pull, push 流程

自己的分支:source-branch, 需要合并进来的分支: target-branch

  1. 先在 source-branch 进行 git addgit commit 确保所有内容都已提交到当前仓库
  2. 再切换到 target-branch分支, 将source-branch分支合并到当前分支,如果存在冲突就解决冲突,再git add,git commit
  3. 然后继续在target-branch分支, 执行git pull拉取最新代码,然后解决冲突,git add, git commit, 然后再git push将内容推送到远程,如果git push发生冲突,则继续第 3 步的流程
  4. 最后再将source-branch删除即可git branch -d source-branch
每次进行分支切换/合并分支/拉取远程仓库代码/推送本地代码到远程之前,都要先确保本地的代码已经全部`git add`且`git commit`成功!否则可能造成代码丢失!

每次进行分支切换/合并分支/拉取远程仓库代码/推送本地代码到远程之前,都要先确保本地的代码已经全部`git add`且`git commit`成功!否则可能造成代码丢失!

每次进行分支切换/合并分支/拉取远程仓库代码/推送本地代码到远程之前,都要先确保本地的代码已经全部`git add`且`git commit`成功!否则可能造成代码丢失!

使用 vscode 合并分支

如下图演示的是将cdn分支合并到master分支

  1. 先确保当前分支所有代码已经 commit
  2. 切换到master分支

  1. 打开 git 源代码管理界面

  1. 选择合并分支,并选择cdn分支

此时表示的是将cdn分支合并到当前分支, 而当前是master分支,所以最终表示的就是将cdn分支合并到master分支

在这个界面打开分支选择界面,如下图所示

在这个界面,选择cdn分支, 此时就会将cdn分支合并到当前分支

分支 merge 之后的回退

代码回滚

分支删除

删除本地的 bug_xzx 分支: git branch -D bug_xzx

删除远程的 bug_xzx 分支: git push origin --delete bug_xzx

参考资料

git merge 后,后悔了如何回退