git repo使用技巧

2021-07-05 03:31:08 字數 3522 閱讀 1030

~$: sudo apt-get install git
~$: git init

~$: git remote add origin

~$: git config --global user.name "yourname"

~$: git config --global user.email [email protected]

git status        檢視倉庫狀態,顯示上次遞交之後本地的檔案變動以及臨時遞交,注意這裡比較的是同一節點間的變動。

git diff 尚未快取的改動

git diff --cached 檢視已快取的改動

git diff head 檢視已快取的與未快取的所有改動

git log 檢視歷史記錄

git log origin/

檢視遠端分支遞交記錄

git stash 把當前的工作隱藏起來 等以後恢復現場後繼續工作

git stash list 檢視所有被隱藏的檔案列表

git stash drop 刪除檔案

git stash pop 恢復檔案的同時 也刪除檔案

git remote 檢視遠端庫的資訊

git fetch 更新遠端資料到本地

git merge 合併本地分支

git pull 同步遠端**到本地

實際上git fetch+git merge=git pull動作

git push origin master git會把master分支推送到遠端庫對應的遠端分支上

git add -a . 所有變更檔案新增到快取區

git commit 將快取區的變更更新到倉庫

git show 顯示commit校驗和對應的修改

git reset head^ 撤銷至上個遞交記錄

git reset --hard

撤銷/回退到相應checksum的commit,注意當前**的備份,該操作會覆蓋當前的**

git rm 將檔案從快取區移除

git clone [email protected]:username/uboot.git //轉殖遠端**到本地

git add -a . //將本地**的變更新增到git快取中

git commit -m "add uboot" //提交變更到本地git

git push origin master //同步到遠端主機

在遠端倉庫為空,且本地倉庫有新檔案的情況下可以使用一下方式:

git init

git add .

git commit -m "***x"

git remote add origin [email protected]:username/uboot.git

git push -u origin master

1.更新自己 fork 的**專案和原作者的專案進度一致的方法:

1)將fork到github上的專案clone到本地

git clone

cd libraries

2)新增 gozfree 專案的位址,也就是主專案的 remote 位址

git remote add gozfree

git fetch gozfree

git merge gozfree/master

3)將原作者的專案跟新到我的github中

git commit -m '更新到原作者的主分支的進度'

git push origin

1.git diff方法

git diff > name.patch 生成patch

git diff --cached > name.patch

git diff branch-name --cached > name.patch

2.git format-patch

git format-patch -m master 生成patch

git am ***.patch 應用patch

當clone到使用者端的檔案被更改許可權後,git status會爆出很多modify

解決方法:更改.git\config檔案中的filemode=true改為false

git 使用詳細教程

1.repo init –u url [options]//檢出清單版本庫

options:

-u:指定乙個url,其連線到乙個maniest倉庫

-m:在manifest倉庫中選擇乙個xml檔案

-b:選擇乙個maniest倉庫中的乙個特殊的分支

例:repo init -u 172.16

.16.121:manifest -b msm8909 -m qcom_msm8909.xml

2.repo sync//同步版本庫

3.repo start [--all | …] //建立並切換分支

4.repo checkout //切換分支

5.repo branches //檢視分支

6.repo diff //檢視工作區檔案差異

7.repo stage //把檔案新增到index表中

8.repo status //檢視檔案狀態

repo init -u gitserver:manifests.git -m ***.

xml (***.

xml檔案決定初始化的專案)

repo sync

repo start *** --

all//建立***專案對應的分支 (--all意為將所有模組都歸為當前***分支下)

git add ***

git commit -m

"***"

repo upload

cd .repo/manifests

ls //檢視***.xml檔案

cd ..

//回到上級目錄

ln -s manifest.

xml manifests/qk_cm298_exer.

xml//更換manifest.xml的軟連線

cd ..

repo sync //同步**

repo start ***--

all//建立本地分支

1.部分子目錄中的檔案push後,遠端依然沒有的情況

最近在使用git push時,發現怎麼push,遠端都無法同步本地子目錄下的檔案,困擾了我兩天時間,最後發現是因為子目錄中也有.git資料夾,因為該目錄是我之前pull的別人的,一直沒注意。這種情況,push是不會同步含有.git資料夾的子目錄的。

git repo 使用備忘

關於repo的一些命令 1 怎樣在 資料夾下所有git庫都建立分支?repo start all 分支名 2 怎樣刪除 資料夾下所有git庫的分支?repo abandon 分支名 1和2其實就是相反的動作 3 怎樣知道 資料夾下都改動了那些?repo diff 4 怎樣把我的提交上傳的gerrit...

git repo使用心得

git是相當與svn,cvs等的版本控制工具,repo封裝了對git的操作,使git命令更簡單化,git學習 這是之前自己看的,但實際工作操作中還是遇到了很多困難,總是遇到衝突,無法提交等問題,現在對git的使用還是不很熟,但現在對使用也基本了解了,這樣簡單介紹一下。在使用git時,用了repo,w...

git repo常用操作

repo init repo sync 2.建立分支 repo start branch all 3.porting作業 cd git dir repo sync get all branchs git cherry pick commit id if no conflit done else ha...