learngit笔记

https://learngitbranching.js.org

git rebase xxx  将xxx复制到当前分支下
git rebase A B 将B复制到A分支下



git merge  a  将a合并到当前分支下 


git pull origin a  
=  git fetch a   下载a
 +git merge a     把a合并到当前分支


pull 也可以用 source:destination    先把source下载分支为des,再和本地分支合并




git branch -f   分支 ---> id







git revert HEAD                     //撤销最近一次提交
git revert HEAD~1                   //撤销上上次的提交,注意:数字从0开始
git cherry-pick <提交号>...          把xxx 提交号复制到当前下

git rebase -i  HEAD~4  调整最近4次的提交记录   这里不止可以调整记录,还可以删除记录


git rebase a b  把b移到a上,a是base


git commit --amend 用作提交在历史分支的修改  amend 意思是修订

git tag v1 c1  为c1打上标签tagv1  如果不指定c1 则默认是HEAD


git describe   描述这个分支的记录


git describe 的​​语法是:

git describe <ref>
<ref> 可以是任何能被 Git 识别成提交记录的引用,如果你没有指定的话,Git 会以你目前所检出的位置(HEAD)。
它输出的结果是这样的:
<tag>_<numCommits>_g<hash>
tag 表示的是离 ref 最近的标签, numCommits 是表示这个 ref 与 tag 相差有多少个提交记录, hash 表示的是你所给定的 ref 所表示的提交记录哈希值的前几位。
当 ref 提交记录上有某个标签时,则只输出标签名称


^后的数字只的是其父分支的第一个分支,在两个父分支A,B后merge中产生的master中才生效
git checkout master^2  到B
git checkout master^   到A


git fetch 只是下载远程分支



 git reset --hard o/maste   远程分支更新到master

git checkout -b 新建分支到节点
git checkout -b totallyNotMaster o/master
git branch -u o/master foo 设置远程的master为本地的foo
// 如果当前分支就是foo 也可以下面这样
git branch -u o/master
git fakeTeamwork


git push origin <source 本地的分支>:<destination 远程的分支>
git push origin master
head 是个节点 不是分支 推送的只能是分支   c1HEAD--c2--c3=master   这个时候gitpush 失败,因为HEAD上没有分支


git fetch origin foo



git push origin :side   删除远端的side分支
git fetch origin :bugFix 本地增加一个分支bugFix ---没啥用的
posted @ 2020-03-01 23:24  zongzi10010  阅读(142)  评论(0编辑  收藏  举报