天天看點

Git下載下傳安裝及使用方法總結

  版本控制(revision control)是一種在開發的過程中用于管理檔案、目錄或工程等内容的修改曆史,友善檢視更改曆史記錄,備份以便恢複以前的版本的軟體工程技術。

  主流的版本控制器有如下這些:

git

svn(subversion)

cvs(concurrent versions system)

vss(micorosoft visual sourcesafe)

tfs(team foundation server)

visual studio online

  版本控制産品非常的多(perforce、rational clearcase、rcs(gnu revision control system)、serena dimention、svk、bitkeeper、monotone、bazaar、mercurial、sourcegear vault),現在影響力最大且使用最廣泛的是git與svn。

1、本地版本控制

  記錄檔案每次的更新,可以對每個版本做一個快照,或是記錄更新檔檔案,适合個人用,如rcs。

Git下載下傳安裝及使用方法總結

2、集中版本控制 svn

  所有的版本資料都儲存在伺服器上,協同開發者從伺服器上同步更新或上傳自己的修改。

Git下載下傳安裝及使用方法總結

  所有的版本資料都存在伺服器上,使用者的本地隻有自己以前所同步的版本,如果不連網的話,使用者就看不到曆史版本,也無法切換版本驗證問題,或在不同分支工作。而且,所有資料都儲存在單一的伺服器上,有很大的風險這個伺服器會損壞,這樣就會丢失所有的資料,當然可以定期備份。代表産品:svn、cvs、vss。

3、分布式版本控制 git

  所有版本資訊倉庫全部同步到本地的每個使用者,這樣就可以在本地檢視所有版本曆史,可以離線在本地送出,隻需在連網時push到相應的伺服器或其他使用者那裡。由于每個使用者那裡儲存的都是所有的版本資料,隻要有一個使用者的裝置沒有問題就可以恢複所有的資料,但這增加了本地存儲空間的占用。不會因為伺服器損壞或者網絡問題,造成不能工作的情況!

Git下載下傳安裝及使用方法總結
Git下載下傳安裝及使用方法總結

  svn是集中式版本控制系統,版本庫是集中放在中央伺服器的,而工作的時候,用的都是自己的電腦,是以首先要從中央伺服器得到最新的版本,然後工作,完成工作後,需要把自己做完的活推送到中央伺服器。集中式版本控制系統是必須聯網才能工作,對網絡帶寬要求較高(集中式的版本控制軟體,權限控制強,适合集中協作)。

  git是分布式版本控制系統,沒有中央伺服器,每個人的電腦就是一個完整的版本庫,工作的時候不需要聯網了,因為版本都在自己電腦上。協同的方法是這樣的:比如說自己在電腦上改了檔案a,其他人也在電腦上改了檔案a,這時,你們兩之間隻需把各自的修改推送給對方,就可以互相看到對方的修改了。git可以直接看到更新了哪些代碼和檔案!(分布式的版本控制軟體,适合分工協作)

  git 是一個分布式版本控制軟體, 最初是為了更好的管理linux核心而設計的的,如今發展為各種語言進行版本控制。git的作者就是linux的作者林納斯.托瓦茲。 他是linux核心的首要架構師與項目協調者, 是當今世界上最著名的電腦程式員與黑scd客之一。

  git本地有三個工作區域:工作目錄(working directory)、暫存區(stage/index)、資源庫(repository或git directory)。如果在加上遠端的git倉庫(remote directory)就可以分為四個工作區域。檔案在這四個區域之間的轉換關系如下:

Git下載下傳安裝及使用方法總結

workspace:工作區,就是你平時存放項目代碼的地方

index / stage:暫存區,用于臨時存放你的改動,事實上它隻是一個檔案,儲存即将送出到檔案清單資訊

repository:倉庫區(或本地倉庫),就是安全存放資料的位置,這裡面有你送出到所有版本的資料。其中head指向最新放入倉庫的版本

remote:遠端倉庫,托管代碼的伺服器,可以簡單的認為是你項目組中的一台電腦用于遠端資料交換

  本地的三個區域确切的說應該是git倉庫中head指向的版本:

Git下載下傳安裝及使用方法總結

directory:使用git管理的一個目錄,也就是一個倉庫,包含我們的工作空間和git的管理空間。

workspace:需要通過git進行版本控制的目錄和檔案,這些目錄和檔案組成了工作空間。

.git:存放git管理資訊的目錄,初始化倉庫的時候自動建立。

index/stage:暫存區,或者叫待送出更新區,在送出進入repo之前,我們可以把所有的更新放在暫存區。

local repo:本地倉庫,一個存放在本地的版本庫;head會隻是目前的開發分支(branch)。

stash:隐藏,是一個工作狀态儲存棧,用于儲存/恢複workspace中的臨時狀态。

Git下載下傳安裝及使用方法總結

git組成架構:

remote遠端倉庫:各廠商提供的倉庫。 例如github, gitee, gitlab

repository本地倉庫:在本地存放項目或檔案的目錄

index暫存區:暫時存放檔案。 覺得檔案不需要修改了, 在送出到本 地倉庫中。 最終可以送出到遠端倉庫上

workspace工作區:就是存放項目或檔案的工作目錄

git的工作流程一般是這樣的:

  1.在工作目錄中添加、修改檔案;

  2.将需要進行版本管理的檔案放入暫存區域;

  3.将暫存區域的檔案送出到git倉庫。

是以,git管理的檔案有三種狀态:已修改(modified),已暫存(staged),已送出(committed)

Git下載下傳安裝及使用方法總結

  版本控制就是對檔案的版本控制,要對檔案進行修改、送出等操作,首先要知道檔案目前在什麼狀态,不然可能會送出了現在還不想送出的檔案,或者要送出的檔案沒送出上。

untracked: 未跟蹤, 此檔案在檔案夾中, 但并沒有加入到git庫, 不參與版本控制. 通過git add 狀态變為staged.

unmodify: 檔案已經入庫, 未修改, 即版本庫中的檔案快照内容與檔案夾中完全一緻. 這種類型的檔案有兩種去處, 如果它被修改, 而變為modified. 如果使用git rm移出版本庫, 則成為untracked檔案

modified: 檔案已修改, 僅僅是修改, 并沒有進行其他的操作. 這個檔案也有兩個去處, 通過git add可進入暫存staged狀态, 使用git checkout 則丢棄修改過, 傳回到unmodify狀态, 這個git checkout即從庫中取出檔案, 覆寫目前修改 !

staged: 暫存狀态. 執行git commit則将修改同步到庫中, 這時庫中的檔案和本地檔案又變為一緻, 檔案為unmodify狀态. 執行git reset head filename取消暫存, 檔案狀态為modified。

  上面說檔案有4種狀态,通過如下指令可以檢視到檔案的狀态:

  有些時候我們不想把某些檔案納入版本控制中,比如資料庫檔案,臨時檔案,設計檔案等,可以在主目錄下建立".gitignore"檔案,此檔案有如下規則:

忽略檔案中的空行或以井号(#)開始的行将會被忽略。

可以使用linux通配符。例如:星号(*)代表任意多個字元,問号(?)代表一個字元,方括号([abc])代表可選字元範圍,大括号({string1,string2,...})代表可選的字元串等。

如果名稱的最前面有一個感歎号(!),表示例外規則,将不被忽略。

如果名稱的最前面是一個路徑分隔符(/),表示要忽略的檔案在此目錄下,而子目錄中的檔案不忽略。

如果名稱的最後面是一個路徑分隔符(/),表示要忽略的是此目錄下該名稱的子目錄,而非檔案(預設檔案或目錄都忽略)。

  第一步:首先通過組裡給配置設定的賬号通過git克隆一個項目到自己的電腦中。 這一步一定要有網!

  第二步:克隆項目到本地電腦的倉庫中後, 通過checkout從本地倉庫中檢出到自己的開發工作空間中。

  第三步:開始編寫代碼, 編寫完畢後, 確定沒有問題了, 再送出到暫存區裡。 如果覺得代碼有問題, 重新編寫代碼再次送出到暫存區中。 确定無誤後, 在送出到本地倉庫中。

  第四步:最終檢查代碼, 如果沒有問題了, 則将本地倉庫中的代碼最終送出給遠端倉庫裡。 一定要記住, 遠端倉庫裡的代碼是最終要上線的, 是以一定要本地倉庫中的 代碼測試沒有問題了, 在最終送出到遠端倉庫中。

  注意:pull 這個指令僅僅是把項目拉到你的工作空間中, 但是不能進行送出, 僅作為檢視來使用。

官網下載下傳:​​https://git-scm.com​​,下載下傳速度較慢

Git下載下傳安裝及使用方法總結

淘寶鏡像下載下傳:​​http://npm.taobao.org/mirrors/git-for-windows/​​,下載下傳速度較快

Git下載下傳安裝及使用方法總結

下載下傳對應的版本即可安裝!

  一路next就可以完成安裝,安裝完畢就可以使用了。

  安裝成功後在開始菜單中會有git項,菜單下有3個程式:任意檔案夾下右鍵也可以看到對應的程式!git的中的指令與linux的指令一樣。

Git下載下傳安裝及使用方法總結

  git bash:unix與linux風格的指令行,使用最多,推薦最多;【主要使用這個】

  git cmd:windows風格的指令行;

  git gui:圖形界面的git,不建議初學者使用,盡量先熟悉常用指令。

平時一定要多使用這些基礎的指令!

  1)cd : 改變目錄。

  2)cd . . 回退到上一個目錄,直接cd進入預設目錄

  3)pwd : 顯示目前所在的目錄路徑。

  4)ls(ll): 都是列出目前目錄中的所有檔案,隻不過ll(兩個ll)列出的内容更為詳細。

  5)touch : 建立一個檔案 如 touch index.js 就會在目前目錄下建立一個index.js檔案。

  6)rm: 删除一個檔案, rm index.js 就會把index.js檔案删除。

  7)mkdir: 建立一個目錄,就是建立一個檔案夾。

  8)rm -r : 删除一個檔案夾, rm -r src: 删除src目錄

  9)mv 移動檔案, mv index.html src index.html 是我們要移動的檔案, src 是目标檔案夾,當然, 這樣寫,必須保證檔案和目标檔案夾在同一目錄下。

  10)reset 重新初始化終端/清屏。

  11)clear 清屏。

  12)history 檢視指令曆史。

  13)help 幫助。

  14)exit 退出。

  15)#表示注釋

  所有的配置檔案,其實都儲存在本地!

檢視配置: git config -l

Git下載下傳安裝及使用方法總結

檢視不同級别的配置檔案:

git相關的配置檔案:

  1)git\etc\gitconfig :git 安裝目錄下的 gitconfig --system 系統級

  2)c:\users\administrator\ .gitconfig 隻适用于目前登入使用者的配置 --global 全局

Git下載下傳安裝及使用方法總結

  這裡可以直接編輯配置檔案,通過指令設定後會響應到這裡。

設定使用者名與郵箱(使用者辨別,必要)

  當你安裝git後首先要做的事情是設定你的使用者名稱和e-mail位址。這是非常重要的,因為每次git送出都會使用該資訊。它被永遠的嵌入到了你的送出中:

  隻需要做一次這個設定,如果你傳遞了--global 選項,因為git将總是會使用該資訊來處理你在系統中所做的一切操作。如果你希望在一個特定的項目中使用不同的名稱或e-mail位址,你可以在該項目中運作該指令而不要--global選項。總之--global為全局配置,不加為某個項目的特定配置。

Git下載下傳安裝及使用方法總結

  工作目錄(workspace)一般就是你希望git幫助你管理的檔案夾,可以是你項目的目錄,也可以是一個空目錄,建議不要有中文。

日常使用隻要記住下圖6個指令:

Git下載下傳安裝及使用方法總結

  建立本地倉庫的方法有兩種:一種是建立全新的倉庫,另一種是克隆遠端倉庫。

(1)建立全新的倉庫,需要用git管理的項目的根目錄執行:

執行後可以看到,僅僅在項目目錄多出了一個.git目錄,關于版本等的所有資訊都在這個目錄裡面。

(2)另一種方式是克隆遠端目錄,是将遠端伺服器上的倉庫完全鏡像一份至本地!

去 gitee 或者 github 上克隆一個測試!

  github 是有牆的,比較慢,在國内的話,我們一般使用 gitee ,公司中有時候會搭建自己的gitlab伺服器。

1、注冊登入碼雲,完善個人資訊

Git下載下傳安裝及使用方法總結

2、設定本機綁定ssh公鑰,實作免密碼登入!(免密碼登入,這一步挺重要的,碼雲是遠端倉庫,我們是平時工作在本地倉庫!)

Git下載下傳安裝及使用方法總結

3、将公鑰資訊public key 添加到碼雲賬戶中即可!

Git下載下傳安裝及使用方法總結

4、使用碼雲建立一個自己的倉庫!

Git下載下傳安裝及使用方法總結

許可證:開源是否可以随意轉載,開源但是不能商業使用,不能轉載,... 限制!

Git下載下傳安裝及使用方法總結

克隆到本地!

Git下載下傳安裝及使用方法總結

檢視賬号資訊:

Git下載下傳安裝及使用方法總結

檢視ssh公鑰:

Git下載下傳安裝及使用方法總結

檢視私有倉庫成員:

Git下載下傳安裝及使用方法總結

點選倉庫右側的“管理”可修改倉庫是否開源:私有or公開

Git下載下傳安裝及使用方法總結

菜單欄順序選擇: file->settings,在彈出框中選擇下圖中的git

Git下載下傳安裝及使用方法總結

然後點選右側上方輸入框 path to git executable:中右面的浏覽圖示(小檔案夾),并定位git的可執行程式(git.exe檔案在git安裝目錄下的cmd檔案夾中)。

Git下載下傳安裝及使用方法總結

點選test按鈕。如果點選後可以顯示出版本号,說明配置成功,此時點選視窗下側的ok按鈕即可。

Git下載下傳安裝及使用方法總結

1、建立倉庫

點選頁面右上方的"+"并選擇"建立倉庫"

Git下載下傳安裝及使用方法總結

2、設定倉庫相關資訊

首先輸入倉庫名,通常可以和idea中項目名相同,是否開源則可結合需求選擇,這裡選擇的私有(該項目僅自己可見)

Git下載下傳安裝及使用方法總結

然後點選下方的"建立"按鈕.

Git下載下傳安裝及使用方法總結

此時gitee上完成了倉庫的建立工作。

3、複制目前倉庫路徑,這個路徑需要在後面idea上傳項目時使用.

Git下載下傳安裝及使用方法總結

4、在idea中将項目導入版本控制

在idea菜單欄順序選擇: vcs->import into version control->create git repository,目的是先在本地建立一個git倉庫

Git下載下傳安裝及使用方法總結

彈出框中目前項目,點選"ok"按鈕即可

Git下載下傳安裝及使用方法總結

5、滑鼠右鍵項目名,在彈出的菜單欄中順序選擇:git->add

目的是将目前項目中本地倉庫沒有的内容添加到本地倉庫中(實際上并沒有真實添加,隻有在下一步操作中才會真實添加,但是所有倉庫中沒有的檔案都需要先add後才可以通過下面的步驟添加到倉庫!)

Git下載下傳安裝及使用方法總結

6、送出更改

滑鼠右鍵目前項目名,在彈出的菜單欄中順序選擇:git->commit directory

Git下載下傳安裝及使用方法總結

之後輸入本次送出的備注,例如:第一次送出(注:這裡必須輸入内容,否則無法送出)。然後點選commit按鈕進行本地送出。

目的:送出的目的是将目前項目儲存到本地倉庫中。

之後,點選idea左側邊條的1:project回到項目結構視圖

Git下載下傳安裝及使用方法總結

滑鼠右鍵項目名,在彈出的菜單欄中順序選擇:git->repository->push

目的就是将本地倉庫儲存的内容同步到伺服器(上傳到伺服器,并使伺服器中的倉庫與本地倉庫内容保持一緻)。

Git下載下傳安裝及使用方法總結

第一次操作時需要配置伺服器倉庫位址,點選彈出框中的define remote

Git下載下傳安裝及使用方法總結

在彈出框中的url輸入框中添加gitee上建立的倉庫路徑(第一大步最後一小步中在頁面上複制的倉庫路徑),并點選ok按鈕

Git下載下傳安裝及使用方法總結

之後idea會自動檢查連結,沒有問題,則點選下方的push按鈕

Git下載下傳安裝及使用方法總結

第一次送出時要求輸入gitee上的賬号和密碼,輸入後可選中remember記住密碼,後續就不需要輸入了。

Git下載下傳安裝及使用方法總結

此時完成送出,右下方會提示。

Git下載下傳安裝及使用方法總結

附:push失敗的解決辦法:

上面最後一步若送出失敗,會在右下側提示。

Git下載下傳安裝及使用方法總結

此時點選idea下測控制台選項打開控制台視圖:

Git下載下傳安裝及使用方法總結

在控制台中依次執行下面三個指令:

如圖:

Git下載下傳安裝及使用方法總結
Git下載下傳安裝及使用方法總結
Git下載下傳安裝及使用方法總結

之後再嘗試push。

1、通路gitee或github,找到項目對應的倉庫,并複制倉庫位址。

Git下載下傳安裝及使用方法總結

2、打開idea,依次選擇菜單:file->new->project from version control

Git下載下傳安裝及使用方法總結

3、在彈出框中輸入倉庫路徑(從第一步中gitee或github複制的路徑),并點選clone

Git下載下傳安裝及使用方法總結

4、在彈出框中輸入gitee或github的賬号和密碼并點選log in

Git下載下傳安裝及使用方法總結

等待下載下傳完畢即可。