repo和git使用小結

來源:互聯網
上載者:User

1. 配置git環境變數

    git config –global user.name yourname    git config –global user.email yourname@gmail.com    git config –gloval core.editor vim

可以用cat ~/.gitconfig來看看是否配置正確。

2. 建立git分支

如建立origin/android-4.0.4_r1.2分支,在工程目錄下輸入:

git checkout -b android-4.0.4_r1.2 origin/android-4.0.4_r1.2git checkout aosp/xxxx    // 切換分支到aosp/xxx

3. 增加、刪除和修改檔案

git add path/file1, path/file2 ... // 增加和修改git checkout path/file             // 放棄修改git rm path/file                   // 刪除檔案

使用git status查看當前分支下檔案修改狀態

4. 提交修改

git commit            // 提交命令,輸入對應的log說明git commit --amend    // 提交命令,和上面命令區別:這次提交和上次的提交本質上是一個工作

提交之前最好同步下代碼:

git fetch aospgit rebase aosp/android-4.0.4_r1.2

git fetch相當於是從遠程擷取最新版本到本地,不會自動merge。更新合并可以使用下面命令:

git fetch origin mastergit log -p master..origin/mastergit merge origin/master

上述命令首先從遠程origin的master主分支下載最新的版本到origin/master分支上,然後比較本地的master分支和origin/master分支的差別,最後進行合并。

上述過程其實可以用以下更清晰的方式來進行:

git fetch origin master:tmpgit diff tmp git merge tmp

5. push提交的code到git 伺服器

git push aosp HEAD:refs/for/android-4.0.4_r1.2


其它

1)如何查看repo庫上分支版本:

git --git-dir=.repo/manifests/.git/ branch -a

2)如何放棄本地修改:

git remote updategit reset --hard <BRANCH>

如:

git reset --hard origin/android-4.0.4_r1.2


3)如何查看某個檔案修改曆史

切換的檔案所在目錄,輸入如下命令:

git log --pretty=oneline 檔案名稱

接著終端會按照行列出修改曆史,每一行最前面的有一長串數字就是每次提交形成的雜湊值,再根據雜湊值查看具體修改記錄:

git show 雜湊值

4)如何查看某個提交log的修改內容

首先通過 git log查看目前的提交,根據Change-Id通過git diff命令來比較修改內容:

git diff change-id-1 change-id-2   // 比較兩個change-id之間的差異,如不指定第二個change-id,則跟當前進行比較。

5) 更新代碼併合並本地修改

git pull aosp android-4.2.2_r1

相當於是從遠程擷取最新版本並merge到本地,上述命令其實相當於git fetch和git merge。在實際使用中,git
fetch更安全一些,因為在merge前,我們可以查看更新情況,然後再決定是否合并。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.