git的基本使用

git init             //初始化本地仓库 .git

git status -sb -sb         //显示当前所有文件的状态

git diff            //查看更改,查看difference,显示的格式正是Unix通用的diff格式

git add 文件路径        //用来将变动添加到暂存区

git commit -m "信息"       //用来正式提交变动,提交至 .git仓库 如果有新的变动,我们只需要依次执行                                                                 //git add xxx 和 git commit -m 'xxx' 两个命令即可

git log            //查看变更历史

git reset --hard        //重置暂存区与工作区,与上一次commit保持一致

git reset --hard [commitid]   //重置当前分支的HEAD为指定commit,同时重置暂存区和工作区,与指定                                                       //commit一致

//commitid使用git log --stat查看

平行世界

在平行世界B的你,刚刚把版本回退到了版本2,于是睡觉去啦,第二天发现版本3才是对的,可是使用git log已经查看不到commit信息了,怎么办?

git reflog    //用来记录你的每一次命令,显示当前分支的最近几次提交

场景1:当你改乱了工作区某个文件的内容,想直接丢弃工作区的修改时,用命令

git checkout --file

场景2:当你不但改乱了工作区某个文件的内容,还添加了暂存区时,想丢弃修改,分两步,第一步用命令

git reset HEAD file

就回到了场景1,第二步按场景1操作。

场景3:已经提交了不合适的修改到版本库时,想要撤销本次提交,git reset --hard,不过前提是没有推送到远程仓库。

删除文件

git rm [file1] [file2] ...    //删除工作区文件,并且将这次删除放入暂存区

另一种情况是删错了,因为本版库里还有,所以可以很轻松得把误删的文件恢复到最新版本:

git checkout  -- test.txt

使用分支

$ git checkout -b [branch] //新建一个分支,并切换到该分支
$ git branch //命令会列出所有分支,当前分支前面会标一个*号。
$ git add .
$ git commit -m "提交分支branch"
$ git checkout master //切换回master分支
$ git merge [branch] //把branch分支合并到master分支
$ git branch -d branch //合并完成后删除branch分支

查看分支:git branch

创建分支:git branch <name>

切换分支:git checkout <name>

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

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

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

原文地址:https://www.cnblogs.com/huayang1995/p/14550211.html