在进行项目开发时,都会用到版本控制工具,如svn、Git等,随着Git的发展,渐渐的被越来越多的人使用,甚至慢慢在取代svn的地位。下面将从Git仓库的创建、Git常用的基本命令、Git的分支管理、Git查看提交历史、Git 标签、Git 远程仓库来介绍Git的使用。当然下面所涉及的命令都是在Git bash中操作的,所有必须先安装Git,至于怎样安装Git,这里就不介绍了,网上有一大把安装教程。
Git 创建仓库
创建一个git仓库有如下几种方式:
- git init:初始化一个git仓库
- git clone:clone一个git仓库
下面对这几种方式进行详细介绍:
- git init
Git使用git init命令来初始化一个Git仓库,执行完git init命令后,会生成一个.git目录,该目录包含了资源数据,且只会在仓库的根目录生成。
如果用当前目录作为Git仓库,则只需要执行如下命令:
git init
执行结果如下:
执行该命令之后,就可以在当前目录下生成.init文件夹,并且会默认生成一个master分支。
如果要在指定的目录下生成仓库,则指令如下:
git init newDir
newDir为仓库的路径,执行完成之后,会在newDir目录下生成一个.git目录。具体的执行结果如下:
执行该命令之后,就可以在当前目录下生成newtest文件夹,并在改文件夹下生成.init文件夹。
- git clone
使用git clone命令可以从Git仓库拷贝项目,类似于SVN中的 svn checkout,命令格式为:
git clone <url> [directory]
url为git仓库地址,directory为本地目录,比如,要克隆某个Git 代码仓库,可以用下面的命令:
git clone git://github.com/schacon/grit.git
执行完成之后会在当前目录下生成仓库,如果要指定目录下生成,则可以在后面加一个具体的位置路径,如:
git clone git://github.com/schacon/grit.git newgit
如下为clone一个仓库的执行结果:
git clone 时,可以用不同的协议,包括 ssh, git, https 等,其中最常用的是 ssh,因为速度较快,还可以配置公钥免输入密码,各种写法格式如下:
git clone git@github.com/schacon/grit.git --SSH协议
git clone git://github.com/schacon/grit.git --GIT协议
git clone https://github.com/schacon/grit.git --HTTPS协议
Git 基本指令的使用
下面介绍一下git中常用的几种命令:
- git config:配置信息
- git add:添加文件到缓存命令
- git status:查看文件的状态命令
- git diff:查看更新的详细信息命令
- git commit:提交命令
- git reset HEAD:取消缓存命令
- git rm:删除命令
- git mv:移动或重命名命令
下面对这几个命令进行详细介绍:
- git config
我们可以通过git config来配置用户名和邮箱地址,便于我们将代码提交到远程仓库,具体格式如下:
git config --global user.name '你的用户名'
git config --global user.email '你的邮箱'
- git add
git add 命令可将文件添加到缓存,如新项目中,添加所有文件很普遍,可以使用如下命令:
git add .
当然我们也可以指定某一类文件,如将java文件添加到缓存中,可以使用如下命令:
it add *.java
如:我们可以创建两个文件,将它添加的缓存中,具体操作如下: