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

转载——git的安装和使用

时间:2017-03-12 20:13:04      阅读:181      评论:0      收藏:0      [点我收藏+]

标签:目录   upd   新建   平台   搭建   跨平台   托管   sina   push   

现简述一下git的安装和使用。

安装:
有关git于svn区别及其优势不再赘述,现简介其使用方法,因为我的电脑是win7系统,所以需要到官网(https://git-for-windows.github.io/)下载msysgit。(图形界面的话还需安装TortoiseGit)
下载完成,双击安装,一路选择默认设置即可。
技术分享
(选择使用git的命令行模式,选择默认git Bash模式即可)

技术分享
(选择换行格式,默认选第一个windows下使用的跨平台样式即可)。
安装完成后,找到刚刚安装的git ,其中有一个git Bash,打开它即可使用了。
技术分享
其中使用的命令和Linux的常用命令一样,比如ls、pwd、cd等。
--------------------------------------------------------------------------------------------
使用:
技术分享

好了,git已经安装完毕,现在打算在D盘software/repository/git/目录下创建一个git仓库,名字是mygitresp
使用命令git init --bare <仓库名>

技术分享
然后在d/software/respository/git目录下就看到了刚刚创建的仓库。
 
技术分享
目录简单说明:
  1. hooks:这个目录存放一些shell脚本,可以设置特定的git命令后触发相应的脚本;在搭建gitweb系统或其他git托管系统会经常用到hook script
  2. info:包含仓库的一些信息
  3. objects:所有的Git对象都会存放在这个目录中,对象的SHA1哈希值的前两位是文件夹名称,后38位作为对象文件名
  4. refs:这个目录一般包括三个子文件夹,heads、remotes和tags,heads中的文件标识了项目中的各个分支指向的当前commit
  5. config:这个是GIt仓库的配置文件
  6. description:仓库的描述信息,主要给gitweb等git托管系统使用
  7. HEAD:这个文件包含了一个档期分支(branch)的引用,通过这个文件Git可以得到下一次commit的parent
新用户-->代码clone
    我们创建一个新的目录d/software/developer/user1来模拟用户1 第一次从仓库check代码操作。
主要注意的是第一次需要使用clone命令将整个项目down到本地(类似svn的check),不是首次的话就可以直接使用git pull来同步更新代码了。
命令git clone <仓库地址或目录> /d/software/respository/<仓库名> <用户目录>
技术分享

新建文件,上传代码:
在user1目录新建文本文件 readme.txt,打开写入一测试语句“user1 create file.”后保存;然后在控制台中键入
命令 git status
告知有未提交的文件 readme.txt需要提交。
技术分享

现在将其加入到git并做本地提交和共享库提交。
技术分享
 

技术分享

好了,至此,我们已经将readme.txt文件提交到了远程共享仓库,我们切换到一个新的目录(d/software/developer/user2 相当于新用户)来将user1提交的代码更新到本地, 同样,首次需要使用clone将整个工程项目down下来。
技术分享

OK, 打开user2目录,你会发现user1提交的readme.txt成功获得,打开后发现user1输入的文本“user1 create file.”显示OK。
技术分享

---------------------------------------------------------------------------------------------
冲突解决:
现在模拟一种冲突现象,user2在readme.txt文件第二行加入自己的一句话“user2 update"后保存,
然后在控制台按照以上命令提交代码。
然后user1在没有更新代码的前提下在第二行写入了“user1 add info",那么当user1提交到远程时,将报错,说有冲突。
技术分享
接下来根据上图提示我们先使用命令 git pull更新一下
技术分享
提示自动合并文件失败,此时user1下的readme.txt内容已经被打上冲突标记了:

技术分享
我们先不用管它,继续回到user1的控制台,执行
命令 git mergetool后回车,要求再键入一个冲突解决工具的名称,直接回车则打开默认的vimdiff工具(git当然也可以自己配置其他如beyond compare等工具)
代码修改无误确认冲突解决后,退出编辑器,这时候再执行
命令 git commit -a 填写备注后将最终结果提交到本地git库,然后
命令 git push origin master 来提交到远程库。这里可以直接将目录下自动生成的.orig文件删除了
OK。
技术分享
 
----------------------------------------------------------------------------------------------
总结:
 git常用命令:
1.创建git资源库
    git init --bare 库名称
 
2.在用户文件夹下把资源clone下来
    git clone <仓库地址或目录> /d/software/respository/<仓库名> <用户目录>
 
3.创建一个文件,纳入到版本控制中。
    git add <文件名>
 
4.提交到本地版本库中。
 git commit <文件名>
 
5 推送到远程共享库中
   git push origin master
 
6.切换目录(新用户),获取最新的文件。
   git pull
7.查看git仓库中各文件的当前状态
git status
 
技术分享

转载——git的安装和使用

标签:目录   upd   新建   平台   搭建   跨平台   托管   sina   push   

原文地址:http://www.cnblogs.com/hzn1995/p/6538659.html

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