首页 > 代码库 > 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)、演示不同行冲突
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的使用