hujh20 发表于 2018-9-17 11:47:01

git 常用方法

  1.删除远程tag或者branch
  git push origin --delete (tagName)/(brachName).
  例如:删除远程2.1branch:git push origin --delette 2.1
  2.检出某次commit时的代码(通过commit index检出)
  git checkout commit的SHA1值
  例如:git checkout f9e08fd76146bfc7cc45a4c7e27244591069c2cc
  3.从某个commit点新建branch
  git branch new_branch_name commit的SHA1值
  例如:git branch new_branch_name f9e08fd76146bfc7cc45a4c7e27244591069c2cc
  4.强制删除远程的某次commit
  git reset --hard HEAD~6 删除6次commit信息
  git push origin HEAD --force
  如何删除远程分支上的Tag
  git tag -d qfe-20150831-v040412
  git push origin :refs/tags/qfe-20150831-v040412
  下载远程所有的分支
  git fetch --all
  查看本地分支
  git status
  合并master分支到本地分支
  git pull origin master
  取消commit
  git checkout -- filename
  reset命令有3种方式:
  git reset --mixed:此为默认方式,不带任何参数的git reset,即时这种方式,它回退到某个版本,只保留源码,回退commit和index信息
  git reset --soft:回退到某个版本,只回退了commit的信息,不会恢复到index file一级。如果还要提交,直接commit即可
  git reset --hard:彻底回退到某个版本,本地的源码也会变为上一个版本的内容
  以下是一些reset的示例:
  (1) 回退所有内容到上一个版本
  git reset HEAD^
  (2) 回退a.py这个文件的版本到上一个版本
  git reset HEAD^ a.py
  (3) 向前回退到第3个版本
  git reset –soft HEAD~3
  (4) 将本地的状态回退到和远程的一样
  git reset –hard origin/master
  (5) 回退到某个版本
  git reset 057d
  (7) 回退到上一次提交的状态,按照某一次的commit完全反向的进行一次commit 此方法可以回滚某个文件的提交
  git revert HEAD
  目录回滚

[*]  git checkout file1 (回滚单个文件)
[*]  git checkout file1 file2 ... fileN (一次回滚多个文件,中间用空格隔开即可)
[*]  git checkout . (直接回滚当前目录一下的所有working tree内的修改,会递归扫描当前目录下的所有子目录)
  比较数据
  git diff
  如果想要比较最新提交和缓存区内的文件,使用 –cached flag。
$ git diff --cached  
$ git diff --cached index.html


页: [1]
查看完整版本: git 常用方法