git用法彙總

  使用了一年多的git命令了,昨晚居然又出現了問題。雖然解決了,不過仍是被罰了。。。 總結下本身經常使用的git命令和遇到的一些坑。git

  1)經常使用的命令gitlab

      1. 從git遠程分支clone代碼: git clone  gitlab地址代碼日誌

       2.查看當前分支orm

         git branchit

       3. 切換分支io

         git  checkout 分支名ast

       4. 合併代碼class

        git merge 分支名稱date

      5.提交代碼grep

       git add -A

       git commit -m "註釋"

       git push origin 分支名

     2)特定場景遇到的一些問題

       1.回滾到某個分支

          1) git log     查看提交的記錄

          .找到具體須要回滾到那次的

          2)git reset --hard  回滾日誌id

          回滾後強制提交  (若是是受保護的分支是沒法回滾的)

           3)git push origin 分支名 --force

       2.若是衝突過多,只提交本身的分支代碼 

       git log 查看本身的分支提交記錄

        git cherry-pick 日誌id

        git add -A

        git commit -m "提交內容"

         git push origin 分支名  便可

        3.查看本身分支是以哪一個分支爲基準的

         git reflog --date=local --all | grep 分支名稱

         

         git reflog show 分支名稱
     
        4.若是遠程建立好了分支,本地沒有。 我曾經用過
        git checkout -b  遠程分支名
        這裏面有個坑,若是你當前所在的分支 和遠程建立的分支 不是同一個分支名,當你 checkout -b 時候會把你本地的分支合併到遠程分支上面的。 好比 你在遠程建立了一個以master爲基準的分支,而在你本地 ,你當前是在dev 分支上面。這個時候 你使用 git checkout -b 分支名,就會出現 你本地的分支是以dev爲基準的。你在去pull 遠程分支的時候,就會把你本地以dev爲基準的分支合併到遠程 以master爲基準的分支上面。當你合併到其餘分支的時候,就會出現特別多的衝突。。。。  
    正確用法是 :遠程建立了分支後,先去git pull 下,再去git checkout 分支 
相關文章
相關標籤/搜索