自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Git 系列(二):初步了解 Git

系統(tǒng) Linux 開源
在這個系列的介紹篇中,我們學(xué)習(xí)到了誰應(yīng)該使用 Git,以及 Git 是用來做什么的。今天,我們將學(xué)習(xí)如何克隆公共 Git 倉庫,以及如何提取出獨(dú)立的文件而不用克隆整個倉庫。

[[169440]]

在這個系列的介紹篇中,我們學(xué)習(xí)到了誰應(yīng)該使用 Git,以及 Git 是用來做什么的。今天,我們將學(xué)習(xí)如何克隆公共 Git 倉庫,以及如何提取出獨(dú)立的文件而不用克隆整個倉庫。

由于 Git 如此流行,因而如果你能夠至少熟悉一些基礎(chǔ)的 Git 知識也能為你的生活帶來很多便捷。如果你可以掌握 Git 基礎(chǔ)(你可以的,我發(fā)誓!),那么你將能夠下載任何你需要的東西,甚至還可能做一些貢獻(xiàn)作為回饋。畢竟,那就是開源的精髓所在:你擁有獲取你使用的軟件代碼的權(quán)利,擁有和他人分享的自由,以及只要你愿意就可以修改它的權(quán)利。只要你熟悉了 Git,它就可以讓這一切都變得很容易。

那么,讓我們一起來熟悉 Git 吧。

讀和寫

一般來說,有兩種方法可以和 Git 倉庫交互:你可以從倉庫中讀取,或者你也能夠向倉庫中寫入。它就像一個文件:有時候你打開一個文檔只是為了閱讀它,而其它時候你打開文檔是因?yàn)槟阈枰鲂└膭印?/p>

本文僅講解如何從 Git 倉庫讀取。我們將會在后面的一篇文章中講解如何向 Git 倉庫寫回的主題。

Git 還是 GitHub?

一句話澄清:Git 不同于 GitHub(或 GitLab,或 Bitbucket)。Git 是一個命令行程序,所以它就像下面這樣:

 

  1. $ git 
  2. usage: Git [--version] [--help] [-C <path>]  
  3.   [-p | --paginate | --no-pager] [--bare] 
  4.   [--Git-dir=<path>] <command> [<args>] 

由于 Git 是開源的,所以就有許多聰明人圍繞它構(gòu)建了基礎(chǔ)軟件;這些基礎(chǔ)軟件,包括在他們自己身邊,都已經(jīng)變得非常流行了。

我的文章系列將首先教你純粹的 Git 知識,因?yàn)橐坏┠憷斫饬?Git 在做什么,那么你就無需關(guān)心正在使用的前端工具是什么了。然而,我的文章系列也將涵蓋通過流行的 Git 服務(wù)完成每項(xiàng)任務(wù)的常用方法,因?yàn)槟切⒖赡苁悄闶紫葧龅降摹?/p>

安裝 Git

在 Linux 系統(tǒng)上,你可以從所使用的發(fā)行版軟件倉庫中獲取并安裝 Git。BSD 用戶應(yīng)當(dāng)在 Ports 樹的 devel 部分查找 Git。

對于閉源的操作系統(tǒng),請前往其項(xiàng)目官網(wǎng),并根據(jù)說明安裝。一旦安裝后,在 Linux、BSD 和 Mac OS X 上的命令應(yīng)當(dāng)沒有任何差別。Windows 用戶需要調(diào)整 Git 命令,從而和 Windows 文件系統(tǒng)相匹配,或者安裝 Cygwin 以原生的方式運(yùn)行 Git,而不受 Windows 文件系統(tǒng)轉(zhuǎn)換問題的羈絆。

Git 下午茶

并非每個人都需要立刻將 Git 加入到我們的日常生活中。有些時候,你和 Git 最多的交互就是訪問一個代碼庫,下載一兩個文件,然后就不用它了。以這樣的方式看待 Git,它更像是下午茶而非一次正式的宴會。你進(jìn)行一些禮節(jié)性的交談,獲得了需要的信息,然后你就會離開,至少接下來的三個月你不再想這樣說話。

當(dāng)然,那是可以的。

一般來說,有兩種方法訪問 Git:使用命令行,或者使用一種神奇的因特網(wǎng)技術(shù)通過 web 瀏覽器快速輕松地訪問。

假設(shè)你想要給終端安裝一個回收站,因?yàn)槟阋呀?jīng)被 rm 命令毀掉太多次了。你可能聽說過 Trashy ,它稱自己為「理智的 rm 命令中間人」,也許你想在安裝它之前閱讀它的文檔。幸運(yùn)的是,Trashy 公開地托管在 GitLab.com。

Landgrab

我們工作的第一步是對這個 Git 倉庫使用 landgrab 排序方法:我們會克隆這個完整的倉庫,然后會根據(jù)內(nèi)容排序。由于該倉庫是托管在公共的 Git 服務(wù)平臺上,所以有兩種方式來完成工作:使用命令行,或者使用 web 界面。

要想使用 Git 獲取整個倉庫,就要使用 git clone 命令和 Git 倉庫的 URL 作為參數(shù)。如果你不清楚正確的 URL 是什么,倉庫應(yīng)該會告訴你的。GitLab 為你提供了 Trashy 倉庫的用于拷貝粘貼的 URL。

 

 

 

 

你也許注意到了,在某些服務(wù)平臺上,會同時提供 SSH 和 HTTPS 鏈接。只有當(dāng)你擁有倉庫的寫權(quán)限時,你才可以使用 SSH。否則的話,你必須使用 HTTPS URL。

一旦你獲得了正確的 URL,克隆倉庫是非常容易的。就是 git clone 該 URL 即可,以及一個可選的指定要克隆到的目錄。默認(rèn)情況下會將 git 目錄克隆到你當(dāng)前所在的目錄;例如,'trashy.git' 將會克隆到你當(dāng)前位置的 'trashy' 目錄。我使用 .clone 擴(kuò)展名標(biāo)記那些只讀的倉庫,而使用 .git 擴(kuò)展名標(biāo)記那些我可以讀寫的倉庫,不過這并不是官方要求的。

 

  1. $ git clone https://gitlab.com/trashy/trashy.git trashy.clone 
  2. Cloning into 'trashy.clone'... 
  3. remote: Counting objects: 142, done. 
  4. remote: Compressing objects: 100% (91/91), done. 
  5. remote: Total 142 (delta 70), reused 103 (delta 47) 
  6. Receiving objects: 100% (142/142), 25.99 KiB | 0 bytes/s, done. 
  7. Resolving deltas: 100% (70/70), done. 
  8. Checking connectivity... done. 

一旦成功地克隆了倉庫,你就可以像對待你電腦上任何其它目錄那樣瀏覽倉庫中的文件。

另外一種獲得倉庫拷貝的方式是使用 web 界面。GitLab 和 GitHub 都會提供一個 .zip 格式的倉庫快照文件。GitHub 有一個大大的綠色下載按鈕,但是在 GitLab 中,可以在瀏覽器的右側(cè)找到并不顯眼的下載按鈕。


 

 

仔細(xì)挑選

另外一種從 Git 倉庫中獲取文件的方法是找到你想要的文件,然后把它從倉庫中拽出來。只有 web 界面才提供這種方法,本質(zhì)上來說,你看到的是別人的倉庫克隆;你可以把它想象成一個 HTTP 共享目錄。

使用這種方法的問題是,你也許會發(fā)現(xiàn)某些文件并不存在于原始倉庫中,因?yàn)橥暾问降奈募赡苤挥性趫?zhí)行 make 命令后才能構(gòu)建,那只有你下載了完整的倉庫,閱讀了 README 或者 INSTALL 文件,然后運(yùn)行相關(guān)命令之后才會產(chǎn)生。不過,假如你確信文件存在,而你只想進(jìn)入倉庫,獲取那個文件,然后離開的話,你就可以那樣做。

在 GitLab 和 GitHub 中,單擊文件鏈接,并在 Raw 模式下查看,然后使用你的 web 瀏覽器的保存功能,例如:在 Firefox 中,“文件” > “保存頁面為”。在一個 GitWeb 倉庫中(這是一個某些更喜歡自己托管 git 的人使用的私有 git 倉庫 web 查看器),Raw 查看鏈接在文件列表視圖中。

 

最佳實(shí)踐

通常認(rèn)為,和 Git 交互的正確方式是克隆完整的 Git 倉庫。這樣認(rèn)為是有幾個原因的。首先,可以使用 git pull 命令輕松地使克隆倉庫保持更新,這樣你就不必在每次文件改變時就重回 web 站點(diǎn)獲得一份全新的拷貝。第二,你碰巧需要做些改進(jìn),只要保持倉庫整潔,那么你可以非常輕松地向原來的作者提交所做的變更。

現(xiàn)在,可能是時候練習(xí)查找感興趣的 Git 倉庫,然后將它們克隆到你的硬盤中了。只要你了解使用終端的基礎(chǔ)知識,那就不會太難做到。還不知道基本的終端使用方式嗎?那再給多我 5 分鐘時間吧。

終端使用基礎(chǔ)

首先要知道的是,所有的文件都有一個路徑。這是有道理的;如果我讓你在常規(guī)的非終端環(huán)境下為我打開一個文件,你就要導(dǎo)航到文件在你硬盤的位置,并且直到你找到那個文件,你要瀏覽一大堆窗口。例如,你也許要點(diǎn)擊你的家目錄 > 圖片 > InktoberSketches > monkey.kra。

在那樣的場景下,文件 monkeysketch.kra 的路徑是:$HOME/圖片/InktoberSketches/monkey.kra。

在終端中,除非你正在處理一些特殊的系統(tǒng)管理員任務(wù),你的文件路徑通常是以 $HOME 開頭的(或者,如果你很懶,就使用 ~ 字符),后面緊跟著一些列的文件夾直到文件名自身。

這就和你在 GUI 中點(diǎn)擊各種圖標(biāo)直到找到相關(guān)的文件或文件夾類似。

如果你想把 Git 倉庫克隆到你的文檔目錄,那么你可以打開一個終端然后運(yùn)行下面的命令:

 

  1. $ git clone https://gitlab.com/foo/bar.git  
  2. $HOME/文檔/bar.clone 

一旦克隆完成,你可以打開一個文件管理器窗口,導(dǎo)航到你的文檔文件夾,然后你就會發(fā)現(xiàn) bar.clone 目錄正在等待著你訪問。

如果你想要更高級點(diǎn),你或許會在以后再次訪問那個倉庫,可以嘗試使用 git pull 命令來查看項(xiàng)目有沒有更新:

 

  1. $ cd $HOME/文檔/bar.clone 
  2. $ pwd 
  3. bar.clone 
  4. $ git pull 

到目前為止,你需要初步了解的所有終端命令就是那些了,那就去探索吧。你實(shí)踐得越多,Git 掌握得就越好(熟能生巧),這是重點(diǎn),也是事情的本質(zhì)。

責(zé)任編輯:龐桂玉 來源: Linux中國
相關(guān)推薦

2016-08-02 11:06:34

開源Linux版本控制

2016-12-19 14:59:55

Git二進(jìn)制管理

2016-08-22 11:46:53

GitLinux開源

2016-08-23 10:39:38

GitLinux開源

2019-03-28 14:30:21

代碼開發(fā)命令

2016-09-23 20:04:26

2015-08-20 10:42:17

2016-08-05 12:58:44

GitLinux開源

2018-09-18 14:34:43

GIT系統(tǒng)實(shí)踐

2022-02-10 09:56:33

git revertgit resetGit

2024-07-22 14:14:01

2018-07-27 10:39:13

對象存儲Git

2015-08-07 09:36:25

git筆記

2022-12-22 13:18:54

深度學(xué)習(xí)框架

2021-02-26 21:59:22

Git版本系統(tǒng)

2019-11-05 10:18:04

RPM包RPMLinux

2020-01-18 18:41:13

GitGit服務(wù)器開源

2020-03-05 16:47:51

Git內(nèi)部儲存

2025-04-11 08:26:41

2023-12-08 17:59:55

工具Git LFS管理
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號