Git使用備忘錄

2021-08-21 20:43:06 字數 2200 閱讀 8978

git倉庫本質上就是乙個擁有歷史紀錄並可以隨時恢復歷史狀態的資料夾。

git的大部分操作是基於head指標進行的。

分支本質上類似於乙個指向提交記錄的指標。

本地操作

git init 在當前目錄下構建倉庫。

git add *** 將當新增或修改檔案時,將變化的檔案儲存。

git status 查詢倉庫狀態,檢查是否需要add。

git diff 檢視修改。

git commit 在head下提交修改,為head指標指向的記錄增加乙個記錄節點,並且移動head指標指向該節點。-m引數新增修改資訊。

git log 檢視提交日誌。

git reset ***x 將head指向的分支上移到***x節點,此操作基於head指標指向的分支。此操作無法用於撤銷遠端操作。

git revert *** 提交乙個撤銷操作,將***操作撤銷,此操作基於head指標指向的分支。

git branch *** 在當前head指標下建立名為***的分支,head指標不會指向新建立的分支。

git branch -f *** kkk 將***分支指標指向kkk更改記錄,此操作不會移動head指標,此操作本身也不依靠head指標。

git checkout *** 將head指標指向***記錄。

git checkout -b *** 新建***分支,並且將head指標指向***分支。

git tag vvv *** 在***節點上,設定vvv標誌作為里程碑,一般設定為發行版本release。

git merge *** 在head下操作,合併***分支與當前head指向的節點的修改,即建立乙個新的修改節點,繼承兩分支。

git rebase *** 將head下節點取出,放在***節點下,並且將head下分支移到此位置。如果***下已經包含head取出的節點,那麼head下支點將會移到***節點。

git rebase -i *** 將head下節點根據需要取出,放在***節點下,並將head下分支移到此位置。

git cherry-pick *** kkk 將指定節點***,kkk直接拉到head指向的分支。

遠端操作

本地倉庫會為獲取的遠端倉庫中的每乙個分支***構建乙個遠端分支o/***。本地操作無法修改遠端分支o/***,只有當遠端倉庫內的分支發生改變時,遠端分支才會變化。

git clone 獲取遠端倉庫內容。

git fetch rrr *** 獲取遠端倉庫rrr的***分支上的所有修改記錄。

git fetch rrr ***:kkk 獲取遠端倉庫rrr的***分支上的所有修改記錄,並且同步本地分支kkk。

git fetch rrr :*** 在本地倉庫上建立***分支。

git pull 獲取遠端倉庫更新情況,更新遠端分支,然後對該遠端分支執行merge。該指令基於head指標執行,並且當前分支需要設定跟蹤遠端分支屬性。

git pull --rebase 獲取遠端倉庫的更新情況,更新遠端分支,如果當前有根據遠端倉庫歷史版本進行的更新操作,再將這些更新操作追加更新當前分支。該指令基於head指標執行,並且當前分支需要設定跟蹤遠端分支屬性。

git pull rrr *** 獲取遠端倉庫rrr的***分支,然後將其merge到當前head指向節點。

git pull rrr ***:kkk 獲取遠端倉庫rrr的***分支,然後再本地倉庫建立kkk分支並與***分支同步,然後將***分支與head指向節點進行merge操作。

git push 同步本地倉庫與遠端倉庫。此操作基於head指標,如果head指標指向的分支跟蹤遠端分支,本地遠端兩分支會執行同步操作,如果遠端倉庫不存在被head指向的分支跟蹤的分支,遠端倉庫會建立乙個分支並執行同步操作。基於舊記錄的push會被禁止執行。

git push rrr *** 同步本地倉庫與遠端倉庫rrr的***分支。此操作無關head指標,並且本地遠端兩倉庫的***分支需要跟蹤並同名。

git push rrr ***:kkk 同步本地倉庫的***分支與遠端倉庫的kkk分支。如果遠端倉庫不存在kkk分支,遠端倉庫會自動建立該分支,並且執行此操作。此操作無關head指標。

git push rrr :*** 在遠端倉庫上刪除***分支。

git checkout -b *** o/***為 建立分支***,令其跟蹤遠端分支o/***,使用該指令後,head指向***分支

git branch -u o/*** *** 將分支***設定為跟蹤遠端分支o/***,head指標不會移動。

Git命令備忘錄

配置使用者目錄下.gitconfig gitconfig user name zhaozhao email lijianzhaoyou 163.com建立倉庫git init 建立倉庫 新建檔案,檢視檔案狀態git status git status 將檔案新增到快取區git add 並檢視檔案狀態...

AS使用備忘錄

1 使用as打包apk時如何忽略翻譯問題 在build.gradle中做如下配置即可忽略檢測 lintoptions 2 使用as檢視sha1 在as控制台terminal 輸入如下指令即可 keytool v list keystore c users administrator desktop ...

Git分支管理備忘錄

publish v1.0.0 ddl 發布分支 每次迭代開始建立publish發布分支,分支格式 publish 本地版本編號 本次迭代ddl日期 如 publish v1.0.0 0509 master 主幹分支,每次public分支發布線上驗收通過後,將 merge request到master...