仓库相关
- 查看远程仓库地址:
git remote -v
- 切换远程仓库地址:
- 直接切换:
git remote set-url origin [new URL]
- 先删除后切换:
git remote rm origin git remote add origin [new URL]
- 直接切换:
分支相关
- 查看本地分支:
git branch
- 查看所有分支:
git branch -a
- 查看本地分支和远程分支的关联情况:
git branch -vv
- 新建本地分支:
git branch [new branch]
- 切换到本地某个分支:
git checkout [other branch]
- 新建本地分支然后切到新建的分支:
git checkout -b [new Branch]
- 从远程仓库的某个分支新建分支到本地:
git checkout -b [local branch] origin/[remote branch]
- 删除本地分支:
git branch -d [local branch]
- 删除远程分支:
git push origin --delete [remote branch]
- 提交本地分支到远程仓库(远程仓库尚未有分支关联本地分支):
git push origin [local branch]:[remote branch]
- 新建的本地分支关联到远程某个分支(关联之后当前分支就可以直接 git push到远程的关联分支了):
git push --set-upstream origin [remote branch]
commit 相关
- 撤销上一次的提交信息:
git reset HEAD~1
- 选取某次的 commit 记录到当前分支的HEAD节点下:
git cherry-pick [commitHash]
- 选取一段的 commit 记录到当前分支的HEAD节点下:
git cherry-pick [commitHash_A] ^.. [commitHash_B]
操作日志相关
- 查看提交的记录:
git log
- 一行显示提交的记录(这个省略了提交记录的人员和提交的时间):
git log --oneline
- 查看所有分支的所有操作记录(包括已经被删除的 commit 记录和 reset 的操作):
git reflog
Git Flow 相关
初始化项目开发到本地
- fork 团队上游仓库到个人仓库
- clone 个人仓库到本地
新功能开发
- 从团队上游仓库的主分支 branch 到本地 feature/*** 分支下
新功能开发部分完成
- rebase 团队上游 master 分支到本地 feature/*** 分支下
- rebase 团队上游 testing/*** 分支到本地 testing/*** 分支下
- merge 本地的 feature/*** 分支到本地的 testing/*** 分支
- push 本地的 testing/*** 分支到个人仓库到 testing/*** 分支
- 从个人仓库 testing/*** 分支提交 PR 到团队上游仓库到 testing/*** 分支下
新功能开发全部完成
- rebase 团队上游仓库的 master 分支到本地的 master 分支
- merge 本地的 feature/*** 分支到本地的 master 分支
- push 本地 master 分支到个人仓库的 master 分支
- 从个人仓库的 master 分支提交 PR 到团队上游仓库的 master 分支
Bug fixes
- 基于团队上游仓库的 master 分支创建本地的 hotfixes/*** 分支
- rebase 团队上游仓库的 master 分支到本地的 master 分支
- merge 本地的 hotfixes/*** 分支到本地的 master 分支
- push 本地的 master 分支到个人仓库到 master 分支
- 从个人仓库的 master 分支提交 PR 到团队上游仓库的 master 分支下
网友评论