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

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

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编辑器。弹出它编辑日志信息。

技术分享

将提交的文件推送到远程server

技术分享

7  user2从远程server上拉文件,使用命令是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文件

技术分享

将改动的文件内容推送到远程server



技术分享

技术分享

 

技术分享

技术分享

技术分享

技术分享

技术分享

技术分享

技术分享

技术分享

技术分享

删掉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的使用