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

创建git资源库的命令:

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

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

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

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

hooks:提交一些脚本文件

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

objects:所有数据存放位置

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

config:核心的配置信息

description:描述信息

HEAD:存放的分支信息。

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

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

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

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

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

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

进入user1目录下

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

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

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

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

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

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

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

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

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

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

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

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

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

git push origin master

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

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

查看有没有提交,方式:

1 在user1的同级目录下创建user2。

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  1. 演示冲突合并

(1)、演示不同行冲突

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

删掉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 提交到远程库中.

04-17 14:22
查看更多