git使用简介

来源:互联网 发布:dota2数据查询app 编辑:程序博客网 时间:2024/06/07 01:33

一、git基本信息


什么是git?

git是一款开源的分布式版本控制工具,在世界上所有的分布式版本控制工具中,git是最快、最简单、最流行的。

git的起源

作者是Linux之父:LinusBenedictTorvalds

当初开发git仅仅是为了辅助Linux内核的开发(源代码管理)。

git的现状

在国外已经非常普及,国内并未普及(在慢慢普及),越来越多的开源项目已经转移到git。


二、源代码管理类别


1. 集中式:只有一台代码仓库服务器,其他电脑作为客户机。 所有的源代码均保存在服务器端。用户可以使用checkout命令从服务器下载代码,用update命令从服务器更新代码,用commit命令上传本地代码到服务器。 缺点:必须要联网操作。



集中式版本管理工具运行流程如下:



2. 分布式



分布式版本管理工具运行流程如下:



三、git命令行使用基本介绍


1. 为了演示操作流程,先创建一个文件夹:



2. 初始化git仓库(git init), 命令执行完毕后,就会在git_test文件夹下创建一个 ".git" 仓库了。



3. 配置用户名及邮箱信息

3-1) config "user.name" ***。

3-2) config "user.mail" ***。

3-3) 终端输出配置后的信息: cat  filename。



4. 添加单个文件,并且添加到工作区

4-1)用touch命令添加文件。

4-2)add命令将文件添加到 "暂缓区"。

4-3)  commit命令将 "暂缓区" 的内容添加到本地仓库的分支中区, 注意: commit 命令最好写出对应的注释信息。



一次性提交多个文件

4-4) 这里的add命令,add后面追加的值此时不是单个文件,直接写成 "." 就可以。

4-5)commit命令最后也不需要追加文件名称。



5. 查看log

5-1) git log: 查看所有的提交日志。

5-2) git log 文件名:查看指定文件的提交日志。

5-3) git log --pretty=oneline 以简洁的形式,展示日志。


6. 查看版本信息

6-1) 为了后面命令的演示;首先,我手动在Person.m文件中添加了一些内容,如下图。

6-2) 使用add和commit命令将更新后的Person.m提交到本地仓库。

6-3) git reflog命令就可以将所有的版本信息打印出来,如下图所示。其中,黄色的内容就是版本号。



7. 跳转到任意版本

7-1) git reset --hard HEAD^ : 跳转到上一个版本。

7-2) git reset --hard 版本号 : 跳转到指定的版本号代码,往前往后都可以。



8. 显示修改信息

通过命令 git diff Person.m 可以很清晰的看出,工作区中的内容与存储区中内容的差别。

 


9. 与服务器交互使用

以上所介绍的命令均是在本地建立git仓储,并且进行的操作。如果想要与远程服务器进行交互,可以使用以下命令:

1. git clone serverurl: 从远程服务器下载源代码。

2. git pull serverurl: 将远程服务器的源代码更新到本地。

3. git push serverurl: 将本地仓库更新的信息上传到服务器。


四、git工作原理

1. 工作区(Working Directory):仓库文件夹里除 .git目录以外的内容。

2. 版本库(Repository):.git目录,用于存储记录版本信息。

2-1)暂缓区 (stage)

2-2)分支(master):git自动创建的第一个分支。

2-3)HEAD指针:用于指向当前分支。

git add 和 git commit的原理:

1. git add:把文件修改添加到暂存区。

2. git commit:把暂存区的所有内容提交到当前分支。


工作原理图如下:


注:可以使用图形化管理工具SourceTree来代替命令行完成git源代码管理, 下载地址: http://download.csdn.net/download/qqmcy/8661137 。


0 0
原创粉丝点击