`
wbj0110
  • 浏览: 1613288 次
  • 性别: Icon_minigender_1
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

取得项目的 Git 仓库

    博客分类:
  • Git
Git 
阅读更多

有两种取得 Git 项目仓库的方法。第一种是在现存的目录下,通过导入所有文件来创建新的 Git 仓库。第二种是从已有的 Git 仓库克隆出一个新的镜像仓库来。

在工作目录中初始化新仓库

要对现有的某个项目开始用 Git 管理,只需到此项目所在的目录,执行:

$ git init

初始化后,在当前目录下会出现一个名为 .git 的目录,所有 Git 需要的数据和资源都存放在这个目录中。不过目前,仅仅是按照既有的结构框架初始化好了里边所有的文件和目录,但我们还没有开始跟踪管理项目中的任何一个文件。(在第九章我们会详细说明刚才创建的 .git 目录中究竟有哪些文件,以及都起些什么作用。)

如果当前目录下有几个文件想要纳入版本控制,需要先用 git add 命令告诉 Git 开始对这些文件进行跟踪,然后提交:

$ git add *.c
$ git add README
$ git commit -m 'initial project version'

稍后我们再逐一解释每条命令的意思。不过现在,你已经得到了一个实际维护着若干文件的 Git 仓库。

从现有仓库克隆

如果想对某个开源项目出一份力,可以先把该项目的 Git 仓库复制一份出来,这就需要用到 git clone 命令。如果你熟悉其他的 VCS 比如 Subversion,你可能已经注意到这里使用的是 clone 而不是 checkout。 这是个非常重要的差别,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

唯一的差别就是,现在新建的目录成了 mygrit,其他的都和上边的一样。

Git 支持许多数据传输协议。之前的例子使用的是 git:// 协议,不过你也可以用 http(s):// 或者 user@server:/path.git 表示的 SSH 传输协议。我们会在第四章详细介绍所有这些协议在服务器端该如何配置使用,以及各种方式之间的利弊。

 

分享到:
评论

相关推荐

    Git、github与Xcode的配合使用

    取得项目Git仓库的两种方法包括在工作目录中初始化新仓库和从现有仓库克隆。初始化新仓库使用`git init`命令,它会在当前目录创建一个名为.git的隐藏目录,存放所有Git管理的数据。克隆仓库则是使用`git clone [url]...

    Git中文学习手册 Git入门

    2 1 取得项目的 Git 仓库 2 2 记录每次更新到仓库 2 3 查看提交历史 2 4 撤消操作 2 5 远程仓库的使用 2 6 打标签 2 7 技巧和窍门 2 8 小结 3 Git 分支 3 1 何谓分支 3 2 分支的新建与合并 3 3 分支的...

    Git学习手册

    2 1 取得项目的 Git 仓库 2 2 记录每次更新到仓库 2 3 查看提交历史 2 4 撤消操作 2 5 远程仓库的使用 2 6 打标签 2 7 技巧和窍门 2 8 小结 3 Git 分支 3 1 何谓分支 3 2 分支的新建与合并 3 3 分支的...

    git详解-PDF

    - **取得项目的Git仓库**: - **在工作目录中初始化新仓库**:使用`git init`命令创建一个新的空仓库。 - **从现有仓库克隆**:使用`git clone`命令复制一份现有的仓库到本地。 - **记录每次更新到仓库**: - **...

    progit-zh git官方文档-中文版

    **2.1 取得项目的Git仓库** - **从当前目录初始化**:使用`git init`命令在一个新的目录中创建一个新的Git仓库。 - **从现有仓库克隆**:使用`git clone`命令从一个现有的Git仓库克隆一份完整的工作副本。 **2.2 ...

    Git和Repo扫盲——如何取得Android源代码 - William Hua的Blog

    Repo并不是一个独立的版本控制系统,而是作为一个辅助工具,用于管理和同步Android源代码的多个Git仓库。它简化了Android源码的获取和更新过程,使得开发者不必关心背后复杂的多仓库结构。 获取Android源代码的第一...

    pro_git_中文版本

    3. 基础操作和工作流程:包括如何取得项目的Git仓库、记录更新到仓库、查看提交历史、撤消操作、远程仓库的使用和标签的管理。 4. Git分支的使用:何谓分支、基本的分支与合并、分支管理和不同的分支工作流程。特别...

    Git Pro (CN)

    **2.1 取得项目的 Git 仓库** - **从当前目录初始化**: 使用 `git init` 命令可以将当前目录初始化为一个新的 Git 仓库。 - **从现有仓库克隆**: 使用 `git clone` 命令可以从一个现有的 Git 仓库中克隆出一个完整...

    版本工具git教程

    Git基础部分,主要讲述了如何取得项目的Git仓库,包括从当前目录初始化和从现有仓库克隆。记录每次更新到仓库时,需要检查当前文件状态,跟踪新文件,暂存已修改文件,并且可以忽略某些文件。此外,教程也涉及了查看...

    Git + 分享

    - **初始化仓库** (`git init`): 创建一个新的Git仓库。 - **添加文件到暂存区** (`git add`): 将修改过的文件添加到暂存区,准备提交。 - **查看状态** (`git status`): 查看当前仓库的状态,了解哪些文件已被暂存...

    Pro Git中文版电子书

    **2.1 取得项目的Git仓库** - **从当前目录初始化**:使用`git init`命令。 - **从现有仓库克隆**:使用`git clone <repository-url>`命令,可以从远程服务器克隆一个现有的仓库。 **2.2 记录每次更新到仓库** - ...

    Git中文手册

    **2.1 取得项目的Git仓库** - **从当前目录初始化**:使用`git init`命令。 - **从现有仓库克隆**:使用`git clone`命令从远程仓库克隆一个项目到本地。 **2.2 记录每次更新到仓库** - **检查当前文件状态**:使用`...

    开源项目-s3git-s3git.zip

    【S3git:云存储的Git】\n\nS3git是一个创新的开源项目,它将Git的强大版本控制系统与云存储服务相结合,如Amazon S3。由Go语言编写,S3git提供了一种高效、安全的方式来管理和跟踪云存储中的数据变化,同时也允许...

    git linux源代码

    在实际开发中,可以使用`git clone`命令下载Linux内核源代码仓库,然后使用`git log`查看提交历史,`git diff`比较不同版本的区别,`git branch`和`git merge`进行分支操作。此外,`git blame`可以追踪代码的作者,...

    Git和Repo扫盲——如何取得Android源代码

    Git 和 Repo 扫盲——如何取得 Android 源代码 在了解 Git 和 Repo 之前,我们首先需要了解版本控制系统的概念。版本控制系统是指一种管理和跟踪项目代码变更的系统,它可以帮助开发者记录和管理项目的历史修改记录...

Global site tag (gtag.js) - Google Analytics