git 是乙個分布式管理工具,通過指紋字串來時刻保持資料的完整性,關心的是檔案資料整體的變化,並不儲存變化前後的差異資料;git 在本地磁碟儲存有關專案的歷史更新,所有絕大多數操作只需要訪問本地檔案資源,並不需要internet。當然可以使用githbub將**託管,進行遠端開發,方便團隊比較分散的情況(這正體現git分布式的優勢);開發人員只需將專案clone到本地,進行相應的開發然後push上傳到 github(github使用的是utf-8編碼,所以上傳的檔案如若不是以utf-8編碼,可能出現亂碼),供別的開發人員更新即可。
任何檔案在git庫中都有四種狀態:未跟蹤狀態untracked、跟蹤狀態tracked(未修改狀態unmodified、已修改狀態modified、暫存狀態staged),由於檔案的上述四種狀態,在使用git進行專案管理的時候涉及到三個區域:
(1)git 本地資料目錄:每個專案都有乙個 git 目錄,它是 git 用來儲存元資料和物件資料庫的地方。該目錄非常重要,每次轉殖映象倉庫的時候,實際拷貝的就是這個目錄裡面的資料。
(2)工作目錄(專案工作空間):從專案中取出某個版本的所有檔案和目錄,用以開始後續工作的叫做工作目錄,即就是我們進行專案開發的目錄。
(3)暫存區域:所謂的暫存區域只不過是個簡單的檔案,一般都放在 git 目錄中。
git本地倉庫的基本用法:
① git init :初試化當前目錄為乙個git本地倉庫。
② git add : 如果乙個檔案是未被跟蹤的,將 乙個檔案加入到git版本控制當中,讓git對其進行跟蹤;如果乙個檔案是已修改狀態,則將乙個檔案放到暫存區中。
git add . : "."點表示當前目錄下的所有內容
③ git status : 檢視當前git倉庫中所有檔案的狀態,若是為跟蹤狀態 則用紅色顯示。
④ git diff:比較工作目錄中當前檔案和暫存區域快照之間的差異,也就是修改之後還沒有暫存起來的變化內容。
⑤ git commit:提交暫存區域。
git commit -m 《說明資訊》
git commit -a 可以跳過暫存區域,直接將已跟蹤的檔案暫存起來一併提交。
⑥ git rm :從git中刪除乙個檔案。
git rm --cached :從暫存區刪除乙個檔案,但是仍保留在工作目錄中。也就是將檔案變為未跟蹤狀態。
⑦ git log:檢視專案提交歷史記錄。
git log -p 選項展開顯示每次提交的內容差異
git log --stat 僅顯示簡要的增改行數統計
git log --pretty=
,其中option可以是:oneline(使每條歷史資訊在一行中顯示),short,full,fuller,format(按指定的格式輸出)
gitk 可以開啟歷史記錄的視覺化檢視視窗。
⑧ git commit --amend:修改最後一次提交。該命令是提交當前快取區快照,並修改最後一次的說明。
⑨ git checkout -- :撤銷對檔案的修改,慎用!
⑩ git reset head :撤銷對檔案的暫存,讓檔案回到暫存前的狀態。
git遠端倉庫的基本用法:
① git clone [url]:將乙個遠端倉庫轉殖到本地。
② git remote:檢視當前配置的遠端倉庫,在轉殖完某個專案後,至少可以看到乙個名為origin的遠端倉庫,git 預設使用這個名字來標識你所轉殖的原始倉庫。如git remote add [email protected]:usernmae/repositoryname.git
git remote add [remote-name] [url]:新增乙個新的遠端倉庫。
git remote show [remote-name]:檢視遠端倉庫資訊。
git remote rm [remote-name]:移除遠端倉庫。
git remote rename [old-remote-name] [new-remote-name]:重新命名遠端倉庫。
③ git push [remote-name] [branch-name]:推送資料到遠端倉庫,remote-name指的是遠端倉庫簡稱,branch-name指的是分支名稱。對於轉殖的倉庫預設分別為:origin,master
git push -u origin master //將本地的專案提交到遠端倉庫
git將遠端倉庫github取回本地:
① git [url] : 在git下切換到想要存放此專案的目錄,執行這條命令就可以將專案轉殖到本地磁碟的當前目錄
②專案取回本地,遠端倉庫github上有更新,取得更新
git fetch origin //開始取得更新
git merge origin /master //將更新內容合併到本地分支/master
雖然還只是剛接觸git,但是我已經從心底裡欽佩linus,git真是乙個不可多得的管理工具,最重要的是——它竟然是免費的!!
git學習心得總結
git的強大之處在於 1.可以隨處建立分支,使得不同功能的開發不會依賴,這樣 不同版本的 可以完整地保留下來。2.可以隨時將 版本倒流到某個正確無誤的時刻,時光倒流。3.可以利用reset 將本地的冗餘提交的版本去掉。4.可以使用stash 暫存一系列的零時操作。空間倒流。5.可以讓使用者在本地或者...
git學習心得
git是現在最流行的分布式版本控制系統,開發linux時誕生的,可以多人合作分布式開發,管理多個版本,跟github不是同乙個東西,github是開源 託管的伺服器,支援git開發。git包括工作區,版本庫,遠端庫。建立版本庫,執行完成後生成.git的版本庫 git init 新增內容到版本庫的暫存...
git學習心得
建立倉庫並且用gitbash遠端上傳 1.在github上建立專案 登入github後,你可以在右邊靠中那裡找到乙個按鈕 newrepository 點選過後,填入專案名稱 說明和 過後就可以建立。2.配置git以及上傳 安裝git成功後,選擇git bash,用命令列中完成,首先初始設定git 1...