Git的使用

1、创建版本库 mkdir  目录

  初始化版本库    git init

2、添加文件至版本库 

编写文件,放到指定目录下

git add  <file>  #可添加多个文件,反复多次使用

git commit -m "添加内容简要说明"   #一次提交多个文件

3、git  status  查看结果  #随时掌握工作区的状态

 git  diff  具体修改内容

4、版本回退

git reset --hard commit_id  或 git reset --hard HEAD^       ###不区分大小写

git log  可以查看提交历史

git reflog 查看命令历史,回到未来

5、stage(或者叫index)的暂存区

git add  先将所有修改放到暂存区

git commit  一次性将暂存区的所有修改提交到分支上

6、撤销修改

git checkout -- file  把在工作区的修改全部撤销 

a、修改后还没有放到暂存区,撤销修改回到和版本库一模一样的状态

b、修改后已经添加到暂存区,又做了修改,撤销修改就回到添加到暂存区后的状态

git reset HEAD file   可以把暂存区的修改撤销掉(unstage),重新放回工作区  

再git checkout -- file  世界清静了!!

7、删除文件

删除工作区文件  rm file

a 从版本库中删除文件 git rm file ;  git  commit -m "一些注释"

b 版本库中还存在,将删除文件恢复: git checkout -- file

8、远程仓库

git remote add origin git@github.com:账户名/仓库名.git

git push -u origin master 第一次推送master分支的所有内容

git push origin master 推送新修改

9、从远程库克隆

要克隆仓库,知道仓库地址,

git clone git@github.com:CharlesLuoquan/gitskills.git

10、创建与合并分支

查看分支:git branch

创建分支:git branch <name>

切换分支:git checkout <name>

创建+切换分支:git checkout -b <name>

合并某分支到当前分支:git merge <name>

删除分支:git branch -d <name>

11、解决冲突:修改不一致部分,为一样的。  git log --graph看到分支合并图

12、分支管理

合并分支,git 用  Fast forward 模式 ,删除分支后,会丢掉分支信息

 git merge --no-ff -m "merge with no-ff" dev

13、bug分支

git stash   保存当前工作现场;切回dev 分支干活 git checkout  dev  ;git stash list  ;  git stash pop即可恢复

你可以多次stash,恢复的时候,先用git stash list查看,然后恢复指定的stash,用命令:

$ git stash apply stash@{0}

创建新的 bug分支 

git checkout -b issue-101

提交修改的bug git add ; git commit -m “”
git checkout master ;git merge --no-ff -m "merger bug fix 101" issue-101(此是需要合并进当前分支的分支) ;最后删除 bug分支 git branch -d 分支



14、feature分支

开发一个新feature,最好新建一个分支;

如果要丢弃一个没有被合并过的分支,可以通过git branch -D <name>强行删除。

原文地址:https://www.cnblogs.com/harbin-charles/p/7682538.html