Git是一个免费和开源的分布式版本管理系统,系统设计的目的是为了高效及快速的处理所有项目的版本管理功能。
Git非常容易学习掌握,同时也具有很强的性能。对比其他的版本管理工具如SVN,CVS,CC等具有更方便的本地分支,暂存区及多工作区。
git的官网地址


我们以常规的创建工程及需要版本管理应用场景介绍下git的基本操作。

安装Git

在使用前我们得先下载安装下Git,操作非常简单,登录官网的下载地址 https://git-scm.com/downloads,根据不同的操作系统进入按提示进行操作。

创建本地仓库

创建本地仓库有二个方式:
一种将已存在的工程添加到仓库中使其代码控,我们可以进入到工程目录中然后在命令行中执行:

git init

这个之后仓库就建好了,但这个工程中的代码还是没有受控,我们再执行如下的命令则实现工程的Java代码的版本控制

git add *.java
git add LICENSE
git commit -m 'initial project version'

还有一种是将远程已存在的仓库Copy到本地,则可以执行如下命令:

git clone https://github.com/fgliu/seckill.git

提交本地代码

当工程的源码受控后,我们就开始继续编程了,我们修改后的工程文件产生了哪些变化,可以执行以下命令查看:

git status

最终输出提示哪些文件没有受到版本控制,如果是已受控的文件产生了修改,也会提示哪些文件是受控但产生了修改,我们想要将新增的文件添加到版本控制则可以执行命令如下:

git add 受控的文件名

或者将全部新增的都添加则可以执行

git add .

确认都开发完成正式提交代码,则执行

git commit -m '备注信息'

忽略文件

我们在整个工程中,有些文件是动态生成的,类似Java工程中的.class文件。这些类型的文件我们是不想它们受控,是否新增或修改了,版本管理不需要关注,则可以忽略特定类型的文件来实现,文件名为

.gitignore

在这个文件中,可以添加如下内容来忽略.class文件,或者忽略指定目录下的全部文件,其他类似的也是一样

*.class
build/

这个文件及内容创建好后,则将这个文件提交到git中,后续git则根据这个文件中的相关配置自动忽略配置的类型文件。这边有个常规的忽略文件工程可以参考,地址如下:

https://github.com/fgliu/gitignore

查看修改内容

查看修改文件中的变化内容时,可以使用如下命令:

git diff

查看提交记录

随着项目开发的推进,有时需要查看之前的提交日志记录,则可以执行如下命令:

git log

撤消未提交的记录

当我们发现对某个文件的修改后想回退到原来的状态,则在没有执行git add 之前,可以执行以下命令:

git checkout demo.java

版本回退

上述的功能是还没有提交的代码可以执行回退,但如果是已提交了代码呢,git功能强大,当然也帮我们考虑到了,可以执行如下命令

git reset --head '版本号'

上述命令中的版本号可以通过git log 来进行查看,默认输入前7位字符就可以了。其中HEAD代码当前版本号,HEAD^代表上一个版本号,所以可以执行如下代码来回退当前版本

git reset --head HEAD
Comments
Write a Comment