码迷,mamicode.com
首页 > 其他好文 > 详细

02_创建Git仓库,克隆仓库,git add,git commit,git push,git pull,同行冲突,不同行冲突的结局方案,git mergetool的使用

时间:2015-07-27 00:27:17      阅读:168      评论:0      收藏:0      [点我收藏+]

标签:

1 创建Git资源库,残酷目录信息

创建git资源库的命令:

git init –bare 仓库名称 (其中-bare表示的意思是空的库的意思)

技术分享

进入E:\software\repository\git\itheima28,截图如下:

技术分享

hooks:提交一些脚本文件

info:存放一些个人信息,配置信息

objects:所有数据存放位置

refs:git指针信息,记录了修改了什么等的信息

config:核心的配置信息

description:描述信息

HEAD:存放的分支信息。

2 使用上面创建的库,进入E:\git\developer\user1

技术分享

3 在用户文件夹下把资源clone下来

         gitclone <仓库目录> /g/software/repository/git/itheima <用户目录> .

         注意:clone时候用户目录必须为空

技术分享

进入user1目录下

技术分享

 

 

技术分享

其中E:\software\developer\user1\.git\objects位本地库存放数据的文件夹

4 E:\software\developer\user1\中创建一个文件并将文件上传到仓库中

技术分享

查看E:\software\developer\user1下仓库文件的状态

技术分享

使用git add将文件纳入到版本控制中,并使用git commit进行提交。

技术分享

技术分享

5 要将文件推送到远程仓库

上面的commit过程知识将内容提交到本地库,要想将文件推送到远程仓库,需要执行git push命令。

推送到远程共享版本仓库中取

git push origin master

技术分享

技术分享

查看有没有提交,方式:

1 user1的同级目录下创建user2

2 使用克隆命令,获得远程仓库中的内容。

技术分享

技术分享

6 user2下修改readme文件,最终提交修改的过程演示:

技术分享

技术分享

在提交过程中会出现vim编辑器,弹出它编辑日志信息。

技术分享

将提交的文件推送到远程服务器

技术分享

7  user2从远程服务器上拉文件,使用命令是git pull

技术分享

技术分享

再次修改user1下的文件,并提交

技术分享

这里要使用git add readme.txt文件

技术分享

技术分享

 

关于演示冲突合并的过程,可以查看另外一篇本人的博客:

http://blog.csdn.net/tototuzuoquan/article/details/41398025

  1. 演示冲突合并

(1)、演示不同行冲突

a、进入user2,修改readme.txt文件

技术分享

技术分享

b  在未进行git pull的情况下,进入user1,修改readme.txt文件

技术分享

技术分享

总结:如果修改的是同一个文件中的不同行,这时候git push的时候出现了问题。上面提在提交之前先git pull

技术分享

这时候要进入这个文件进行修改,然后再提交修改:

技术分享

技术分享

(2)、不同行的合并问题

下面是修改E:\software\developer\user1中的readme.txt文件

技术分享

将修改的文件内容推送到远程服务器



技术分享

技术分享

 

技术分享

技术分享

技术分享

技术分享

技术分享

技术分享

技术分享

技术分享

技术分享

删掉readme.txt.orig

 

总结:

git pull 之后有冲突:

 

$ git pull

remote: Counting objects: 5, done.

remote: Compressing objects: 100% (2/2), done.

remote: Total 3 (delta 0), reused 0 (delta 0)

Unpacking objects: 100% (3/3), done.

From g:/software/repository/git/itheima26

   50db030..a04027a  master     -> origin/master

Auto-merging readme.txt

CONFLICT (content): Merge conflict in readme.txt

Automatic merge failed; fix conflicts and then commit the result.

 

 

解决方法:

1.git mergetool

         调用上面命令之后会提示你输入编辑方法,输入:beyond compare 进入编辑器.

 

2.编辑完之后.调用git commit -a 把当前目录中所有都提交到本地库中.

 

3.git push origin master 提交到远程库中.

 

版权声明:本文为博主原创文章,未经博主允许不得转载。

02_创建Git仓库,克隆仓库,git add,git commit,git push,git pull,同行冲突,不同行冲突的结局方案,git mergetool的使用

标签:

原文地址:http://blog.csdn.net/tototuzuoquan/article/details/47072705

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!