Git使用速查

1、remote

查询详情

// 查看详情
git remote -v
origin  git@github.com:wangqianwei/git.git (fetch)
origin  git@github.com:wangqianwei/git.git (push)

2、branch

分支管理

// 查看
git branch -a

删除分支 参考blog

// 删除本地分支
git branch -d test
// 删除远程分支
git push origin --delete test

拉取分支

git pull origin branchname --allow-unrelated-histories

3、checkout

分支切换 「 xxxx 代表分支名」

// 以当前本地分支为基准创建一个新的本地分支
git checkout xxxx
// 以当前本地分支为基准创建一个新的本地分支并切换之新分支
git checkout -b xxxx
// 以远程的分支为基准创建一个新的本地分支并切换之新分支
git checkout -b xxxx remotes/origin/master

4、ignore
// 忽略文件权限
git ignore file permission
5、reset

参考文档

操作步骤:

  • 1、从当前分支克隆出一个新得本地分支[git checkout -b new-branch]
  • 2、查看回滚得commit 【先择技巧】
  • 3、在新分支上进行reset操作 【回滚技巧】
  • 4、把新分支merge到需要得分支上

先择技巧: git log --graph 先查看分支合并分布情况,选择合理得分支。

回滚技巧: 尽量使用(按先后顺序排列) --mixed(默认) --soft --hard ,其他得选项可以忽略,几乎用不上。

--soft
不会修改索引,会撤销本地库中得commit。【已经add,但是没有commit
--mixed
撤销索引和commit。【需要addcommit
--hard
撤销索引,并且删除本地没有追踪得文件。【一个干净得工作空间】
--merge
撤销索引,合并当前HEAD和指定回滚commit。如果有已经跟踪得文件有修改,中断操作。【】
--keep
撤销索引,合并当前HEAD和指定回滚commit。如果有冲突会终止操作。【】
--[no-]recurse-submodules
用于回滚子模块到指定commit时的提交状态。【】


6、submodule