本文不對所有git命令複述,僅對生產中常用的命令,利用經典的使用場景進行復現。
基本操作,不作說明了git init
git add .
git commit -m "first commit"
git remote add origin
git push -u origin master
基本操作git add .
git commit -m 'update obj'
git push
建立分支function2,切換到該分支,在**完成變動後,提交到origin遠端倉庫的function2分支,遠端倉庫沒有自動建立。git branch function2
git checkout function2
git pull origin function2
分支合併需要倉庫主和協同者提交pull request,再由倉庫主merge
git push origin --delete function2
先通過git log 檢視了最近的提交版本資訊,根據各個版本的hash,選擇乙個回退git log
git reset --hard 0a19d20f3e12edefab3d
- 複製最後版本的專案到另乙個路徑,刪除.git資料夾
- git reset --hard 首條記錄md5 #本地倉庫回滾到首條記錄
- git push -f orgin head:master #強制提交到首條記錄,即遠端倉庫回滾,遠端未變動時,該句可以不要,只要本地master回退即可
- git branch res
- git checkout res
- 刪除除.git下所有檔案,複製之前的最後版本專案到該路徑下
- git add.
- git commit -m #合併多個請求為乙個
- git checkout master # 回到master
- git merge res # 合併res
- git push # 提交變動到遠端倉庫
- git branch -d res # 刪除res分支
如你所見,git remote add origin
git remote add origin2
origin
並不是乙個git的關鍵字,只是遠端倉庫的名稱,一般協定和預設的 master 主源為 origin
新增git init
git add .
git remote add origin
git remote update
git checkout master
git branch -v
git log
remote add
後不能直接git pull
, 因為再執行git init
以後本地所有檔案,都是uncommit狀態,存在uncommit 檔案時,不允許pull,而git add .
並git commit -m '
後,master的hash和remote repo 的master hash是不一致的,也不允許pull。
所以只能以這種方式,當然如果你想在git init
後刪除除.git以外的所有**,再pull 也是可以的,但是這樣就失去了download的真正意義,因為download的場景,本身就在於go get/git clone 不著,或者檔案過大,git cone失敗。
git gc
壓縮git檔案
git clone --depth 3
只拉取包含最後3條commit的庫
git clone -b dev ***x.git
拉取了dev分支
使用reset
或者使用revertgit reset --hard 8341231ea1d110c3d
# 修改bug
git push origin master -f
兩者的區別是,前者回退了header,該節點之後的提交都會作廢,不利於多人開發合併多的場景。git revert -n 81302412ed989a
# 修改bug
git add .
git commit -m "修復bug"
git push origin master
後者會僅僅對指定commit hash的提交,修改並提交成乙個新的commit,該次修復bug的進度會比呼叫revert更遠。不過缺點就是,當不知道bug是哪次commit造成時,就很尷尬。
常用命令 Git 常用命令大全
安裝教程可參照 廖雪峰老師的安裝教程。git config 在git中,使用git config 命令來配置 git 的配置檔案,git配置級別主要有3類 1 倉庫級別 local 本地 git 倉庫級別配置檔案,作用於當前倉庫。優先順序最高 2 使用者級別 global,全域性配置檔案,作用於所有...
git 常用命令
檢視是否存在檔案需要上傳 git status git add git commit m 建立遠端倉庫 git remote add origin 116.255.146.153 ruby cd work daily project.git 更新git fetch 116.255.146.153 r...
git常用命令
詳細 1,git log p 命令來顯示每一次提交與其父節點提交內容之間快照的差異。2,為了檢視載入 staged 而並未提交 not committed 的內容差異,可以使用 git diff stage 命令 在git 1.6之前的版本中,使用 cached 適應情形 在執行git commit...