常用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
- 先在
source-branch进行git add和git commit确保所有内容都已提交到当前仓库 - 再切换到
target-branch分支, 将source-branch分支合并到当前分支,如果存在冲突就解决冲突,再git add,git commit - 然后继续在
target-branch分支, 执行git pull拉取最新代码,然后解决冲突,git add,git commit, 然后再git push将内容推送到远程,如果git push发生冲突,则继续第 3 步的流程 - 最后再将
source-branch删除即可git branch -d source-branch
每次进行分支切换/合并分支/拉取远程仓库代码/推送本地代码到远程之前,都要先确保本地的代码已经全部`git add`且`git commit`成功!否则可能造成代码丢失!
每次进行分支切换/合并分支/拉取远程仓库代码/推送本地代码到远程之前,都要先确保本地的代码已经全部`git add`且`git commit`成功!否则可能造成代码丢失!
每次进行分支切换/合并分支/拉取远程仓库代码/推送本地代码到远程之前,都要先确保本地的代码已经全部`git add`且`git commit`成功!否则可能造成代码丢失!
使用 vscode 合并分支
如下图演示的是将cdn分支合并到master分支
- 先确保当前分支所有代码已经 commit
- 切换到
master分支

- 打开 git 源代码管理界面

- 选择合并分支,并选择
cdn分支
此时表示的是将cdn分支合并到当前分支, 而当前是master分支,所以最终表示的就是将cdn分支合并到master分支
在这个界面打开分支选择界面,如下图所示

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

分支 merge 之后的回退
代码回滚
分支删除
删除本地的 bug_xzx 分支: git branch -D bug_xzx
删除远程的 bug_xzx 分支: git push origin --delete bug_xzx