1. 理解分叉点
合并分支的时候会产生分叉点
比如: 仓库有dev和feature两个分支;
- 操作1:dev远程新建一个文件
- 操作2:feature提交第一次
- 操作3:远程执行把feture合并到dev分支
在可视化界面可以看到
远程Dev分支的可视化,此时出现了分叉点:
2. Rebase
- 现在本地Dev分支提交会被reject,因为此时本地与远程不一致。执行一次rebase origin/dev
- 可以看到本地Dev分支的可视化为:
3. FixUp
Push后,发现有一些错误,需要修改某一次提交
- 可视化界面 右键Fixup
4. Revert
回滚错误的Push
-
比如我做了两次提交
-
我后悔了想撤回提交三,执行后是不会影响提交4的;即提交4的内容还会保存的
5. Squash Commit (仅限于本地操作)
- 场景:我想把某两笔或者多笔提交合并成一笔
- 选中其中想合并的某几笔提交,然后右键squash commit
- 如果我想把5和1合并到3上,即顺序是3,1,5(默认最上面的是最后的提交)
- 会变成
5. Git Fetch
当你将远程仓库的内容拉取(pull)到本地仓库后,本地仓库会保持和远程仓库同步的状态。如果后续有其他人在远程仓库新建了一个分支,你可以通过执行以下命令来查看远程仓库的所有分支信息:
git fetch
git branch -r
上述命令中,git fetch
会从远程仓库获取最新的信息,包括新建的分支,而git branch -r
会列出所有的远程分支,包括你本地仓库还没有的分支列表。
如果你想在本地创建并追踪远程仓库新建的分支,你可以使用以下命令:
git checkout -b <new-branch-name> origin/<new-branch-name>
上述命令将创建一个新的本地分支,并将其设置为跟踪远程仓库的新分支。这样你就能在本地看到并操作新建的分支了。
总之,在Git中,你可以通过git fetch
来获取最新的远程仓库信息,然后通过相应的命令来查看远程分支并在本地进行操作。如有更多疑问,请随时提出!
6. Cheery-Pick
把分支2的某一笔提交引入到分支1
- 切换到分支1
- 选中分支2的提交右键Cheery-Pick即可