2.1 獲取 Git 倉庫

2018-02-24 15:22 更新

獲取 Git 倉庫

有兩種取得 Git 項目倉庫的方法。第一種是在現(xiàn)有項目或目錄下導入所有文件到 Git 中;第二種是從一個服務器克隆一個現(xiàn)有的 Git 倉庫。

在現(xiàn)有目錄中初始化倉庫

如果你打算使用 Git 來對現(xiàn)有的項目進行管理,你只需要進入該項目目錄并輸入:

$ git init

該命令將創(chuàng)建一個名為 .git 的子目錄,這個子目錄含有你初始化的 Git 倉庫中所有的必須文件,這些文件是 Git 倉庫的骨干。但是,在這個時候,我們僅僅是做了一個初始化的操作,你的項目里的文件還沒有被跟蹤。(參見 Chapter?10 來了解更多關于到底 .git 文件夾中包含了哪些文件的信息。)

如果你是在一個已經存在文件的文件夾(而不是空文件夾)中初始化 Git 倉庫來進行版本控制的話,你應該開始跟蹤這些文件并提交。你可通過 git add 命令來實現(xiàn)對指定文件的跟蹤,然后執(zhí)行 git commit 提交:

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

稍后我們再逐一解釋每一條指令的意思。現(xiàn)在,你已經得到了一個實際維護(或者說是跟蹤)著若干個文件的 Git 倉庫。

克隆現(xiàn)有的倉庫

如果你想獲得一份已經存在了的 Git 倉庫的拷貝,比如說,你想為某個開源項目貢獻自己的一份力,這時就要用到 git clone 命令。如果你對其它的 VCS 系統(tǒng)(比如說Subversion)很熟悉,請留心一下你所使用的命令是"clone"而不是"checkout"。這是 Git 區(qū)別于其它版本控制系統(tǒng)的一個重要特性,Git 克隆的是該 Git 倉庫服務器上的幾乎所有數(shù)據(jù),而不是僅僅復制完成你的工作所需要文件。當你執(zhí)行 git clone 命令的時候,默認配置下遠程 Git 倉庫中的每一個文件的每一個版本都將被拉取下來。事實上,如果你的服務器的磁盤壞掉了,你通??梢允褂萌魏我粋€克隆下來的用戶端來重建服務器上的倉庫(雖然可能會丟失某些服務器端的掛鉤設置,但是所有版本的數(shù)據(jù)仍在,詳見 “在服務器上搭建 Git” )。

克隆倉庫的命令格式是 git clone [url] 。比如,要克隆 Git 的可鏈接庫 libgit2,可以用下面的命令:

$ git clone https://github.com/libgit2/libgit2

這會在當前目錄下創(chuàng)建一個名為 “l(fā)ibgit2” 的目錄,并在這個目錄下初始化一個 .git 文件夾,從遠程倉庫拉取下所有數(shù)據(jù)放入 .git 文件夾,然后從中讀取最新版本的文件的拷貝。如果你進入到這個新建的 libgit2 文件夾,你會發(fā)現(xiàn)所有的項目文件已經在里面了,準備就緒等待后續(xù)的開發(fā)和使用。如果你想在克隆遠程倉庫的時候,自定義本地倉庫的名字,你可以使用如下命令:

$ git clone https://github.com/libgit2/libgit2 mylibgit

這將執(zhí)行與上一個命令相同的操作,不過在本地創(chuàng)建的倉庫名字變?yōu)?mylibgit。

Git 支持多種數(shù)據(jù)傳輸協(xié)議。上面的例子使用的是 https:// 協(xié)議,不過你也可以使用 git:// 協(xié)議或者使用 SSH 傳輸協(xié)議,比如 user@server:path/to/repo.git 。“在服務器上搭建 Git”將會介紹所有這些協(xié)議在服務器端如何配置使用,以及各種方式之間的利弊。

以上內容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號