鍍金池/ 教程/ Java/ 獲得一個(gè) Git 倉庫
儲(chǔ)藏
Git 樹名
子模塊
使用 Git Grep 進(jìn)行搜索
建立一個(gè)私有倉庫
追蹤分支
Git 的撤消操作 - 重置,簽出和撤消
Git 和 Email
定制 Git
查看 Git 對(duì)象
Git 是如何存儲(chǔ)對(duì)象的
Git 標(biāo)簽
交互式 rebase
獲得一個(gè) Git 倉庫
高級(jí)分支與合并
Git 對(duì)象模型
Git 日志
建立一個(gè)公共倉庫
分布式的工作流程
交互式添加
維護(hù) Git
安裝與初始化
安裝 Git
更底層的 Git
歡迎使用 Git
查找問題的利器 - Git Blame
找回丟失的對(duì)象
比較提交
創(chuàng)建新的空分支
查找問題的利器 - Git Bisect
Git 引用
忽略某些文件
傳輸協(xié)議
打包文件
Git 索引
rebase
正常的工作流程
分支合并
Git 目錄與工作目錄

獲得一個(gè) Git 倉庫

既然我們現(xiàn)在把一切都設(shè)置好了,那么我們需要一個(gè) Git 倉庫。有兩種方法可以得到它:一種是從已有的 Git 倉庫中 clone (克隆,復(fù)制);還有一種是新建一個(gè)倉庫,把未進(jìn)行版本控制的文件進(jìn)行版本控制。

Clone 一個(gè)倉庫

為了得一個(gè)項(xiàng)目的拷貝(copy),我們需要知道這個(gè)項(xiàng)目倉庫的地址(Git URL)。Git 能在許多協(xié)議下使用,所以 Git URL 可能以 ssh://, http(s)://, git://,或是只是以一個(gè)用戶名(git 會(huì)認(rèn)為這是一個(gè) ssh 地址)為前輟。有些倉庫可以通過不只一種協(xié)議來訪問,例如,Git 本身的源代碼你既可以用 git:// 協(xié)議來訪問:

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

也可以通過 http 協(xié)議來訪問:

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

git://協(xié)議較為快速和有效,但是有時(shí)必須使用 http 協(xié)議,比如你公司的防火墻阻止了你的非 http 訪問請(qǐng)求.如果你執(zhí)行了上面兩行命令中的任意一個(gè),你會(huì)看到一個(gè)新目錄: git,它包含所有的 Git 源代碼和歷史記錄。

在默認(rèn)情況下,Git 會(huì)把“Git URL”里目錄名的.git的后輟去掉,做為新克隆(clone)項(xiàng)目的目錄名: (例如 git clone http://git.kernel.org/linux/kernel/git/torvalds/linux-2.6.git 會(huì)建立一個(gè)目錄叫linux-2.6)。

初始化一個(gè)新的倉庫

現(xiàn)在假設(shè)有一個(gè)叫”project.tar.gz”的壓縮文件里包含了你的一些文件,你可以用下面的命令讓它置于 Git 的版本控制管理之下。

$ tar xzf project.tar.gz
$ cd project
$ git init

Git 會(huì)輸出:

Initialized empty Git repository in .git/

如果你仔細(xì)觀查會(huì)發(fā)現(xiàn) project 目錄下會(huì)有一個(gè)名叫”.git” 的目錄被創(chuàng)建,這意味著一個(gè)倉庫被初始化了。