@Bios
2022-05-24T02:52:11.000000Z
字数 1842
阅读 688
git
git branch -r // 查看远程仓库
git branch -r -d origin/branch-name
git push origin :branch-name
refusing to merge unrelated histories
git merge <对应的分支> --allow-unrelated-histories
// 输入完后,会进入vim,这时你就只需输入你这次commit的补充信息,就是类似
git commit -m ""
// 双引号当中的内容,esc退出输入,再输入”:wq”即可。
git branch --set-upstream-to=origin/master master
git remote add origin xxxxxx.cxx
git pull origin master // 拉取远程代码
git add .
git commit -m 'xxx'
git push --set-upstream origin master
回滚之前 最好备份
首先,Git必须知道当前版本是哪个版本,在Git中,用HEAD表示当前版本,也就是最新的提交1094adb...(注意我的提交ID和你的肯定不一样),上一个版本就是HEAD^,上上一个版本就是HEAD^^,当然往上100个版本写100个^比较容易数不过来,所以写成HEAD~100。
# 查看提交记录
git log
# 回滚到commit-id,讲commit-id之后提交的commit都去除
$ git reset --hard commit-id
# 或者将最近3次的提交回滚
$ git reset --hard HEAD~3
$ git push origin xxx --force
$ git checkout the_branch
$ git pull
# 备份一下这个分支当前的情况
$ git branch the_branch_backup
# 把the_branch本地回滚到the_commit_id
$ git reset --hard the_commit_id
# 删除远程 the_branch
$ git push origin :the_branch
# 用回滚后的本地分支重新建立远程分支
$ git push origin the_branch
# 如果前面都成功了,删除这个备份分支
$ git push origin :the_branch_backup
指令如下:
git reset hard HEAD^
git push -f
git reset --soft HEAD^
git rm -r --cached .
git add .
git commit -m "update gitignore"
git push
git remote update origin -p
git reflog
然后就会展示出所有你之前git操作,你以前所有的操作都被git记录了下来。
特别是回滚的时候 把中间一下代码给冲掉了,可以这样查看commit hash
再次回滚一下
好的,我们回到了feature-6上,但是feature-7没了,如何加上来呢?这个时候就用上了git cherry-pick,刚刚我们知道了feature-7的hash码为4c97ff3,操作如下:
git cherry-pick 4c97ff3
这个命令可以选择 某一个 commit:
举例来说,代码仓库有master和feature两个分支。
a - b - c - d Master
\
e - f - g Feature
现在将提交f应用到master分支。
# 切换到 master 分支
$ git checkout master
# Cherry pick 操作
$ git cherry-pick f
上面的操作完成以后,代码库就变成了下面的样子。
a - b - c - d - f Master
\
e - f - g Feature
Cherry pick 支持一次转移多个提交。
$ git cherry-pick <HashA> <HashB>
git remote set -url @git..xxx
git fetch origin