~$: 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...