歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> 關於 Git 你所不知道的一些事

關於 Git 你所不知道的一些事

日期:2017/2/28 14:31:18   编辑:Linux教程

上周五我由於使用了git reset --HARD <commit-id> 而使得我丟掉了我的提交(糟糕透頂),因此,我決定是時候重新學習一下git了。

這篇文章講的不是git基礎的一些東西,而是那些你不知道或者只用過一兩次的東西。

  1. 從 reset --HARD 中恢復提交
    使用 git reflog 命令就好了.
    (由 Gittenberg 提供)

  2. Diff
    如果你想查看兩個分支之間有什麼不同之處,你只需要這樣做:git diff branch1..branch2。

  3. 通過正則表達式匹配提交信息並顯示
    使用 git show :/fixes 命令,你可以找到提交信息中包含傳入的字符串(這個例子中是fixes)的最近的提交。

  4. 限制 git push 的默認行為
    如果你運行git push,默認的行為是將所有的分支提交到遠程代碼庫。這可能會導致很多問題,如果你不想這麼做,你可以:git config --global push.default tracking。
    更新: Git 2.0 移除了這個默認的行為 http://blog.nicoschuele.com/posts/git-2-0-changes-push-default-to-simple

  5. 切換到一個分支 rebase 並 merge 到 master
    可以這樣做:git rebase HEAD feature && git rebase HEAD @{-2}

  6. Git 保存工作狀態
    如果由於你的工作還沒有完成,但此時又有緊急的是找上你,你可以使用 git stash 來保存這些修改,提交你緊急的任務,之後再用 git stash pop 恢復到你保存時的狀態。

  7. 別名
    你還在為一次又一次的輸入 checkout 而感到討厭嗎?現在就去嘗試:git config --global alias.co checkout。你就可以通過:git co master 命令來切換到master了。

  8. 重命名一個本地分支
    使用:git branch -m old-name new-name 你可以很容易的重命名一個本地分支。

  9. 搜索作者名稱
    你可以通過使用git log --author=Matheus 來搜索一個指定作者的提交記錄。

  10. 給git status 加上參數
    大多數人僅使用git status,但是,你可以傳入參數來改變狀態顯示的方式。
    使用git status -sb 你可以得到類似下面這樣的輸出:

## master
 M Gemfile
 M Gemfile.lock
 M app/controllers/home_controller.rb
 M app/views/home/index.html.erb

在Ubuntu Server上安裝Git http://www.linuxidc.com/Linux/2009-06/20421.htm

服務器端Git倉庫的創建(Ubuntu) http://www.linuxidc.com/Linux/2011-02/32542.htm

Linux下Git簡單使用教程(以Android為例) http://www.linuxidc.com/Linux/2010-11/29883.htm

Git權威指南 PDF高清中文版 http://www.linuxidc.com/Linux/2013-10/91053.htm

Git 的詳細介紹:請點這裡
Git 的下載地址:請點這裡

Copyright © Linux教程網 All Rights Reserved