Git 学习第三天(一)

远程克隆:

在github新建一个仓库,起名为gitskills

勾选此项,会自动创建一个readme.md文件,然后通过命令

git clone git@github.com:Your.name/gitskills.git

克隆到本地仓库中

 

比如,我在gitskills 下添加了一个文件,那么,想同步推送到github上,就需先进去gitskills文件夹

cd gitskills 

然后再执行 git add       git commit             git push 等草做推送到远程仓库。

_____________________________________________________________

 分支管理:

创建分支 dev ,然后切换到 dev 分支,

git checkout -b dev

 加上 -b 参数是指创建并切换,

实际上,这相当于两条命令

git branch dev    ------- 创建分支

git checkout dev     --------- 切换分支

 

git branch   ------ 显示所有分支 

当前分支前会有 * 号

当前分支的操作不会影响其它分支,比如,我在dev分支下,对readme.txt 文件修改了内容,并且推送到版本库中,然后切换回master分支,查看readme.txt内容,发现,并没有改动.

git checkout master    -------切换分支到master

将dev分支合并到master分支

git marge dev          ----------- 将dev分支合并到当前分支

在dev修改的内容会合并到master上,在master分支上查看内容,发现,master分支下的readme.txt文件内容增加了再dev分支下的修改.

使用完dev 分支,我们就可以将之删除掉,

git branch -d dev

此时,再查看

git branch ,分支就只有master 了.

 

解决冲突:

我们创建一个分支 feature1,

git checkout -b feature1

然后在当前分支下修改readme.txt

git add 提交到暂存库   git commit 提交到版本库

 接下来,切换回master分支,修改readme.txt 内容为

git add 提交到暂存库   git commit 提交到版本库

然后合并feature1到master 

git merge feature1 

果然冲突了!Git告诉我们,readme.txt文件存在冲突,必须手动解决冲突后再提交。git status也可以告诉我们冲突的文件:

查看 master 分支下readme.txt

HEAD 即 master 分支下为:

feature1 分支下为:

此时,需要我们手动解决冲突,修改为:

 

git add 提交到暂存库 git commit 提交到版本库

查看文件:

用带参数的git log也可以看到分支的合并情况:

最后,删除feature1分支:

$ git branch -d feature1
Deleted branch feature1 (was 75a857c).

git log --graph命令可以看到分支合并图。
posted @ 2018-04-08 11:07  Sky_Ice  阅读(116)  评论(0编辑  收藏  举报