git备忘

290 阅读1分钟
git checkout -b develop(表示新建的分支名字) master(从哪儿新建这个分支)

git checkout master(切换到某个分支)

git merge develop(在当前所在分支合并其他的分支进来)

git push -u origin  ssvp
 
git branch -u origin/xxx bbbb

git branch -m reocrd #2150_product_download(重命名)

1.HEAD版本开始往过去数3个版本

git rebase -i HEAD~3
git rebase -i 3a4226b
git rebase --continue  
git rebase --abort  

git format-patch hash

git -c cherry-pick -x -n 3d611f1e40(任何分支提交hash)
git fetch
git merge
git merge <对应的分支> --allow-unrelated-histories
git push
git pull


git stash save "起名"
git stash list
  	stash@{0}: On demo: test stash
	stash@{1}: On demo: Uncommitted changes before Checkout at 2018/1/19 10:03

git pop(默认第一个)
git stash apply stash@{1}(指定要弹出的暂存)

git reset --hard(mixed(没add的状态) soft(add未提交的状态))

git pull origin xxx --allow-unrelated-histories

revert 已合的pr
git revert -m 1 <SHA-1>

git reflog --- 即便是reset hard 都能找回
84671df HEAD@{3}: commit: ab----111
254d6db HEAD@{4}: reset: moving to 254d6dbdb09e33d8c3fcaff00d065bf8f654c015
8bcdddb HEAD@{5}: commit: ab----111

### revert pull requet 
只需要先新建一个分支,然后:
git revert -m 1 b76a5f1f5d3b323679e466a1a1d5f93c8828b269(对应合入pr的hash)