获得一个Git仓库

既然我们现在把一切都设置好了,那么我们需要一个Git仓库。有两种方法可以得到它:一种是从已有的Git仓库中clone(克隆,复制);还有一种是新建一个仓库,把未进行版本控制的文件进行版本控制。

  • Clone一个仓库

为了得一个项目的拷贝(copy),我们需要知道这个项目仓库的地址(Git URL),Git能在许多协议下使用,所以Git URL可能以ssh://、 http(s)://、 git://,或是只是以一个用户名(git 会认为这是一个ssh 地址)为前辍. 有些仓库可以通过不只一种协议来访问,例如,Git本身的源代码你既可以用 git:// 协议来访问:

$git clone git://git.kernel.org/pub/scm/git/git.git

也可以通过http 协议来访问: 

$git clone http://www.kernel.org/pub/scm/git/git.git

当我们在克隆一个仓库时,使用git协议较为快速和有效,但是有时必须使用http协议,比如你公司的防火墙阻止了非http访问请求,那么在这种情况下git协议就无效了,只能使用http协议。

在默认情况下,Git会把"Git URL"里目录名的'.git'的后辍去掉,做为新克隆(clone)项目的目录名,例如:当我们执行【git clone http://www.kernel.org/pub/scm/git/git.git】命令时,git会在当前路径下建立一个目录叫'git'的文件夹,它包含有所的Git源代码和历史记录。

  • 初始化一个仓库

现在假设我们想要将一个叫做”HelloProjet”的项目交给Git去管理,那么我们可以使用下面的命令让它置于Git的版本控制管理之下:

$ git init

                            

github action 获取当前仓库名 git仓库地址怎么获取_git

此时我们会发现”HelloProjet”的项目目录下会有一个名叫”.git” 的目录被创建,这意味着一个仓库被初始化了。

正常的工作流程

当我们获得一个本地仓库后,我们会在这个本地仓库中修改或者是添加一些文件,那么当我们修改或者添加完文件后,我们可以按照下面的流程来将这些修改或者是新增的文件存放到本地仓库中去:

  • 将修改或新增的文件放入索引中(暂存区)
$ git add fileName1 fileName2 fileName3...
  • 查看当前项目的状态,看看暂存区、工作区以及未被Git控制的文件是不是我们想要的结果
$ git status
  • 将索引中的文件提交至本地仓库中
$ git commit

当我们执行上面的提交命令后,Git会提示你输入本次修改的注释:

github action 获取当前仓库名 git仓库地址怎么获取_版本控制_02

我们先按【i】键进入文本编辑模式,然后在第一行输入我们的注释,当我们输入完注释后,再按【esc】键退出编辑模式,然后输入【:wq】命令,最后按回车键进行提交。 

这里有一个关于写commit注释的技巧:commit注释最好以一行短句子作为开头,来简要描述一下这次commit所作的修改(最好不要超过50个字符);然后空一行再把详细的注释写清楚。这样就可以很方便的用工具把commit释变成email通知,第一行作为标题,剩下的部分就作email的正文。

Git 跟踪的是内容不是文件

很多版本控制系统都提供了一个 "add" 命令来告诉系统开始去跟踪某一个文件的改动。但是Git里的 ”add” 命令从某种程度上讲更为简单和强大,【git add fileName1】命令不但是用来添加不在版本控制中的新文件,也用于添加已在版本控制中但是刚修改过的文件,在这两种情况下,Git都会获得当前文件的快照并且把内容暂存(stage)到索引中,为下一次commit做好准备。