查看是否关联到github:ssh -T [email protected]
一,基础命令
git init
:把这个目录变成Git可以管理的仓库
git init
git add
:把文件添加至暂存区
git commit
:把文件提交到仓库,简单解释一下
git commit
命令,
-m
后面输入的是本次提交的说明,可以输入任意内容,当然最好是有意义的,这样你就能从历史记录里方便地找到改动记录。
{
第一步是用
git add
把文件添加进去,实际上就是把文件修改添加到暂存区;
第二步是用
git commit
提交更改,实际上就是把暂存区的所有内容提交到当前分支。
}
git status
命令可以让我们时刻掌握仓库当前的状态
git diff
顾名思义就是查看difference,查看修改的内容
二,基础仓库管理
git log
命令显示从最近到最远的提交日志,需要友情提示的是,你看到的一大串类似
1094adb...
的是
commit id
(版本号)
git reset
命令:
$ git reset --hard HEAD^
HEAD is now at e475afc add distributed
上一个版本就是
HEAD^
,上上一个版本就是
HEAD^^
,当然往上100个版本写100个
^
比较容易数不过来,所以写成
HEAD~100
。
命令
git checkout -- readme.txt
意思就是,把
readme.txt
文件在工作区的修改全部撤销,这里有两种情况:
一种是
readme.txt
自修改后还没有被放到暂存区,现在,撤销修改就回到和版本库一模一样的状态;
一种是
readme.txt
已经添加到暂存区后,又作了修改,现在,撤销修改就回到添加到暂存区后的状态。
命令
git reset HEAD <file>
可以把暂存区的修改撤销掉(unstage),重新放回工作区
删除文件:用命令
git rm
删掉,并
git commit
使用命令
git push origin master
推送最新修改
命令
git clone
克隆一个本地库
例:
$ git clone [email protected]:michaelliao/gitskills.git
Cloning into 'gitskills'...
remote: Counting objects: 3, done.
remote: Total 3 (delta 0), reused 0 (delta 0), pack-reused 3
Receiving objects: 100% (3/3), done.
三,分支管理
查看分支:
git branch
创建分支:
git branch <name>
切换分支:
git checkout <name>
创建+切换分支:
git checkout -b <name>
合并某分支到当前分支:
git merge <name>
删除分支:
git branch -d <name>
可查看分支情况的命令:
git status
查看分支图:
git log --graph
当Git无法自动合并分支时,就必须首先解决冲突。解决冲突后,再提交,合并完成。
解决冲突就是把Git合并失败的文件手动编辑为我们希望的内容,再提交。