git 常用的函数
冲突解决
git reset SOFT --> 当commit 后,发现别人已经做了修改, 则先revert commit, 再pull 代码, 再merge, 再commit, push
提取patch
git format-patch -1 xxxxxxx-patch-uuid ---> 提取某个patch
1 | git format-patch -M master //当前分支所有超前master的提交 |
rebase 到master
1 | 1. 提交代码到自己分支 |
合并提交
https://www.cnblogs.com/amou/p/9465880.html
git rebase -i checkin-uuid (最常用的是类似 git rebase -i HEAD~2)
git push -f origin branch-name-xxxx
同步fork的分支
- 先添加 remote 源
1
git remote add remote_origin git@github.com:***/***.git
- 获取原始仓库分支和对应的提交
1
git fetch remote_origin
- 更新git remote 中所有的远程repo 所包含分支的最新commit-id, 将其记录到.git/FETCH_HEAD文件中
1
git fetch --all
- 把原始remote_origin/master的改变合并到你本地的master分支。这会使你fork的分支master 与上层仓库remote_origin repository同步,而不会丢失你本地所做的改变:
1
2
3git merge remote_origin/master
// or
git rebase remote_origin/master - 提交本地代码到github ## 删除提交记录
1
git push
1 | git reset --soft HEAD~i |
i代表要恢复到多少次提交前的状态,如指定i = 2,则恢复到最近两次提交前的版本。--soft代表只删除服务器记录,不删除本地。
再执行 master代表当前分支1
git push origin master --force
分支管理
- 查看本地及远程所有分支
1
git branch -a
- 删除本地分支
1
git branch -d dev
- 删除远程分支
1
git push origin --delete dev