Git常用命令

来源:互联网 发布:版权局 网络音乐 编辑:程序博客网 时间:2024/06/10 04:54

1、取得项目的Git仓库

  • 在现存的目录下,通过导入所有文件来创建新的Git 仓库。
  • 从已有的Git 仓库克隆出一个新的镜像仓库来。
从当前目录初始化。执行:
$ git init
在当前目录下会出现一个名为.git 的目录,所有Git 需要的数据和资源都存放在这个目录中。不过目前,仅仅是按照既有的结构框架初始化好了里边所有的文件和目录,但我们还没有开始跟踪管理项目中的任何一个文件。
如果当前目录下有几个文件想要纳入版本控制,需要先用git add 命令告诉Git 开始对这些文件进行跟踪,然后提交:
$ git add *.c$ git add TestFile.txt$ git commit -m 'initial project version'
从现有仓库克隆。,Git 收取的是项目历史的所有数据(每一个文件的每一个版本),服务器上有的数据克隆之后本地也都有了。
$ git clone [url]
比如,要克隆Ruby 语言的Git 代码仓库Grit,可以用下面的命令:
$ git clone git://github.com/schacon/grit.git
这会在当前目录下创建一个名为“grit” 的目录,其中内含一个.git 的目录,并从同步后的仓库中拉出所有的数据,取出最新版本的文件拷贝。如果进入这个新建的grit 目录,你会看到项目中的所有文件已经在里边了,准备好后续的开发和使用。如果希望在克隆的时候,自己定义要新建的项目目录名称,可以在上面的命令最后指定:
$ git clone git://github.com/schacon/grit.git mygrit
2、记录每次更新到仓库
工作目录下面的所有文件的状态:已跟踪未跟踪。
已跟踪的文件:指本来就被纳入版本控制管理的文件,在上次快照中有它们的记录,工作一段时间后,它们的状态可能是未更新,已修改或者已放入暂存区。
未跟踪的文件:所有其他文件都属于未跟踪文件。它们既没有上次更新时的快照,也不在当前的暂存区域。初次克隆某个仓库时,工作目录中的所有文件都属于已跟踪文      件,且状态为未修改。
在编辑过某些文件之后,Git 将这些文件标为已修改。我们逐步把这些修改过的文件放到暂存区域,然后等最后一次性提交暂存区域的所有文件更新,如此重复。所以使用Git 时的文件状态变化周期,如图:
3、查看当前文件的状态
如果克隆之后立即执行:
$ git status# On branch masternothing to commit (working directory clean)
这说明你现在的工作目录相当干净。换句话说,当前没有任何跟踪着的文件,也没有任何文件在上次提交后更改过。此外,上面的信息还表明,当前目录下没有出现任何处于未跟踪的新文件,否则Git 会在这里列出来。最后,该命令还显示了当前所在的分支是master,这是默认的分支名称,实际是可以修改的。
现在让我们用vim 编辑一个新文件TestFile.txt,保存退出后运行git status 会看到该文件出现在未跟踪文件列表中:$ vim TestFile.txt
$ git status# On branch master# Untracked files:# (use "git add <file>..." to include in what will be committed)## TestFile.txtnothing added to commit but untracked files present (use "git add" to track)
就是在“Untracked files”这行下面。Git 不会自动将之纳入跟踪范围,除非告你诉它这么做,因而不用担心把临时文件什么的也归入版本管理。

原创粉丝点击