記錄git常用操作命令

2022-01-10 17:00:55 字數 3181 閱讀 6951

作為一名開發者,熟悉使用 git **管理工具是一項必備的基本技能。git 相較 svn 而言,其優點不言而喻。git 的功能非常強大,其包括的操作命令也非常的多,但是從實用性而言,很多命令可能我們一輩子也用不到,這裡我只記錄一下自己經常使用的 git 命令,熟練使用了這些命令,其實已經可以完全得心應手的使用 git 工具了。我所使用的開發環境是在 centos6.5 系統,下邊的操作命令都是在 centos6.5 上進行實驗通過的。

$ yum install git -y
$ apt install git -y
$ ./configure && make && make install
$ git config --global user.name "liwei0526vip"

$ git config --global user.email "[email protected]"

通過git config命令的--global引數設定了git的使用者名稱和使用者郵箱,預設情況下這台機器上所有的git倉庫都會使用這個配置,當然也可以對某個倉庫指定具體不同的使用者名稱和使用者郵箱

倉庫,英文名repository。可以簡單理解成乙個目錄,這個目錄裡面的所有檔案都可以被git管理起來,每個檔案的修改、刪除,git都能跟蹤,以便任何時刻都可以追蹤歷史,或者在將來某個時刻可以"還原"。

$ mkdir learngit

$ cd learngit

$ git init

initialized empty git repository in /root/learngit/.git/

$ ls -a

. .. .git

可以發現當前目錄下多了乙個.git的目錄,這個目錄是git來跟蹤管理版本庫的,千萬不要手動修改這個目錄裡面的檔案,否則就把git倉庫給破壞了

因為文字是有編碼的,如果沒有歷史遺留問題,強烈建議使用標準的utf-8編碼,所有語言使用同一種編碼,既沒有衝突,又被所有平台所支援。

$ git status
$ git add file1.txt

$ git add file2.txt

$ git commit -m "message"    # 一定要寫提交資訊, 便於後續檢視版本資訊
$ git checkout -- file.txt
$ git reset head file.txt    # 丟棄暫存區的修改, 完畢後工作區內容未撤銷
$ git reset --hard head^
$ git diff head -- file.txt
$ git log --pretty=oneline    # --pretty選項更清晰顯示
$ git clone
$ git remote add origin [email protected]:liwei42/gitver.git
$ git push -u origin master    # 第一次推送加'-u'選項, 關聯本地與origin的master分支
$ git pull 《遠端主機名》 《遠端分支名》:《本地分支名》
在預設模式下,取回遠端主機某個分支的更新,再與本地的指定分支合併。git pull是git fetch後跟git merge的縮寫。

比如,要取回origin主機的next分支,與本地的master分支合併,需要寫成下面這樣:

$ git pull origin next:master    # 如果要與當前分支合併, 則冒號後面的部分可以省略
相當於:

$ git fetch origin

$ git merge origin/next

手動建立追蹤關係:

$ git branch --set-upstream master origin/next
上面命令指定master分支追蹤origin/next分支。如果當前分支與遠端分支存在追蹤關係,git pull就可以省略遠端分支名

$ git pull origin    # 如果當前分支只有乙個追蹤分支,連遠端主機名都可以省略
$ git branch b1
$ git checkout b1    # 切換到b1分支

$ git checkout -b b2 # 建立並切換到b2分支

$ git merge dev           # 合併dev分支到當前分支

$ git merge dev master # 合併dev分支到master分支(可能當前分支並沒有在master上)

$ git --no-ff merge dev # 合併時不使用ff方式, 這樣會在合併分支上保留提交的版本資訊

**庫應該有乙個、且僅有乙個主分支。所有提供給使用者使用的正式版本,都在這個主分支上發布。

主分支只用來分布重大版本,日常開發應該在另一條分支上完成。這個分支可以用來生成**的最新隔夜版本(nightly)。如果想正式對外發布,就在master分支上,對develop分支進行"合併"

它是為了開發某種特定功能,從develop分支上面分出來的。開發完成後,要再併入develop。

它是指發布正式版本之前(即合併到master分支之前),我們可能需要有乙個預發布的版本進行測試。預發布分支是從develop分支上面分出來的,預發布結束以後,必須合併進develop和master分支。它的命名,可以採用release-*的形式。

軟體正式發布以後,難免會出現bug。這時就需要建立乙個分支,進行bug修補。修補bug分支是從master分支上面分出來的。修補結束以後,再合併進master和develop分支。它的命名,可以採用fixbug-*的形式

記錄git常用操作命令

作為一名開發者,熟悉使用 git 管理工具是一項必備的基本技能。git 相較 svn 而言,其優點不言而喻。git 的功能非常強大,其包括的操作命令也非常的多,但是從實用性而言,很多命令可能我們一輩子也用不到,這裡我只記錄一下自己經常使用的 git 命令,熟練使用了這些命令,其實已經可以完全得心應手...

常用git命令記錄

git config global user.name name 設定提交 時的使用者資訊 git config global user.email email address git branch 檢視本地所有分支 git status 檢視當前狀態 git branch a 檢視所有的分支 gi...

Git 命令操作記錄

git config list獲取所有資訊 git 修改當前的project的使用者名稱的命令為 git config user.name 你的目標使用者名稱 git 修改當前的project提交郵箱的命令為 git config user.email 你的目標郵箱名 quanju git conf...