git使用說明

2021-06-17 20:44:30 字數 4960 閱讀 7543

linus為linux kernel project發起的版本控制專案。

head代表當前最新狀態。

tag為某個狀態的標籤。

sha1為每個提交日誌的唯一標識。

install:

apt-get install git-core

git clone:

git倉庫可以使用git clone獲得:

git clone git://url

也可以通過瀏覽器瀏覽。

通過git pull更新倉庫,使用git init-db初始化自己的倉庫。

config:

開發人員需要為git倉庫配置相關資訊,這樣在提交**時,這些資訊會自動

反映在git倉庫的日誌中。

git config user.name"your name"

git config user.email yourname@email_server

git config core.editor vim

git config core.*****"less -n"

git config color.difftrue

git config alias.co checkout

git config alias表示,可以用git co代表git checkout。git var -l可以檢視

已經設定的配置。

diff:

開發人員在本地進行開發後,可以使用git diff檢視改動。

除了直接比較當前開發後的改動外,git diff還可以:

git diff tag                    比較tag和head之間的不同。

git diff tag file               比較乙個檔案在兩者之間的不同。

git diff tag1..tag2             比較兩個tag之間的不同。

git diff sha11..sha12           比較兩個提交之間的不同。

git diff tag1 tag2 file or

git diff tag1:file tag2:file    比較乙個檔案在兩個tag之間的不同。

orig_head用於指向前乙個操作狀態,因此在git pull之後如果想得到pull的

內容就可以:

git diff orig_head

git diff --stat                 用於生成統計資訊。

git diff --stat orig_head

--check 檢查能否正常打上補丁,-v verbose模式, -r reverse模式,反打補丁。

log:

gitlogfile                    檢視乙個檔案的改動。

gitlog-p                      檢視日誌和改動。

gitlogtag1..tag2              檢視兩個tag之間的日誌。

gitlog-p tag1..tag2 file      檢視乙個檔案在兩個tag之間的不同。

gitlogtag..                   檢視tag和head之間的不同。

commit:

git commit -a -e        提交全部修改檔案,並呼叫vim編輯提交日誌。

git reset head^ or

git reset head~1        撤銷最後一次提交。

git reset --hard head^  撤銷最後一次提交並清除本地修改。

git reset sha1          回到sha1對應的提交狀態。

add/delete/ls:

git add -a              新增所有檔案。除了.gitignore檔案中的檔案。

git rm file             從git倉庫中刪除檔案。

git commit              新增或是刪除後要提交。

git ls-files -m         顯示修改過的檔案。

git ls-files            顯示所有倉庫中的檔案。

git中有四種物件:blob、tree、commit、tag。

blob代表檔案,tree代表目錄,commit代表提交歷史,tag代表標籤。

這四種物件都是由sha1值表示的。在倉庫的.git目錄中儲存了git管理倉庫

所需要的全部資訊。

git ls-tree head file   顯示file在head中的sha1值。

git cat-file -t sha1    顯示乙個sha1的型別。

git cat-file type sha1  顯示乙個sha1的內容。type是blob、tree、commit、tag之一。

patch:

git format-patch -1     生成最後乙個提交對應的patch檔案。

git am < patch          把乙個patch檔案加入git倉庫中。

git am --resolved       如果有衝突,在解決衝突後執行。

git am --skip           放棄當前git am所引入的patch。

conflict:

git merge               用於合併兩個分支。

git diff                如果有衝突,直接使用diff檢視,

衝突**用《和》表示。手動修改衝突**。

git update-index        更新修改後的檔案狀態。

git commit -a -e        提交為解決衝突而修改的**。

branch:

git branch -a           檢視所有分支。

git branch new_branch   建立新的分支。

git branch -d branch    刪除分支。

git checkout branch     切換當前分支。-f引數可以覆蓋未提交內容。

daemon:

有時更新公共**倉庫使用patch的方式,或者直接

用git pull git://ip/repo branch

的方式更新每個人的**。使用git pull的方式需要

提交**的機器執行:

git daemon --verbose --export-all --enable=receive-pack --base-path=/repo

request-pull:

git request-pull start url      用於產生本次pull請求的統計資訊。

clean:

git clean -dxf          用於清除未跟蹤檔案。

git clean -dnf          可以顯示需要刪除的檔案,但不包括被.gitignore忽略的。

git reset --hard head   用於清除跟蹤檔案的修改。

git 使用說明

head代表當前 最新狀態。tag為某個狀態的標籤。sha1為每個提交日誌的唯一標識。install apt get install git core git clone git 倉 庫可以使用 git clone獲得 git clone git git longene.org unifiedker...

git使用說明

linus為linux kernel project發起的版本控制專案。head代表當前最新狀態。tag為某個狀態的標籤。sha1為每個提交日誌的唯一標識。install apt get install git core git clone git倉庫可以使用git clone獲得 git clon...

Git使用說明

1 配置git 1.1建立使用者 git config global user.name zhangshan git config global user.email example qq.com 1.2建立版本庫 cd e 表明將要在e盤建立 cd git 開啟e盤下的資料夾git mkdir t...