Git常用命令總結及其用法說明

2020-12-05 技術那點事

以下是小編在工作中總結的關於git命令的一些使用方法,僅供參考。

1、gitignore規則不生效

.gitignore只能忽略那些原來沒有被track的文件,如果某些文件已經被納入了版本管理中,則修改.gitignore是無效的。

解決方法就是先把本地緩存刪除(改變成未track狀態),然後再提交:

git rm -r --cached .

git add .

git commit -m 'update .gitignore'

2、git忽略某個指定的文件(不從版本庫中刪除)

執行命令如下:

git update-index --assume-unchanged config.conf

用git status查看一下,已經得到了自己想要的效果

3、git取消忽略某個指定的文件

git update-index --no-assume-unchanged config.conf

4、將當前版本回退到上一個版本,命令如下:

git reset --hard HEAD^

5、 回退到上兩個版本

git reset – hard HEAD^^

6、回退到指定版本

git log //顯示從最近到最遠的提交日誌

git reset --hard commit_id //回退到指定版本

7、查看命令歷史

git reflog

8、拉取暫存區文件並將其替換成工作區文件

gitcheckout-- <file>

9、跟蹤取消,即把文件從git中拿出來,不再進行版本跟蹤,但保留工作區的文件。

git rm - - cached filename

10、查看工作區和版本庫裡面最新版本的區別

git diff HEAD – readme.txt

git diff命令比較的是工作目錄中當前文件與暫存區快照之間的差異,也就是修改之後還沒有暫存起來的變化內容

11、將工作去的內容放入版本庫的暫存區

git add readme.txt

12、將暫存區的內容提交到當前分支

git commit -m "git tracks changes"

13、顯示工作目錄和暫存區的狀態

git status

14、刪除一個文件

git rm test.txt

15、從遠程庫克隆項目

git clone 項目地址

16、創建分支,然後切換到分支

git checkout -b dev

git checkout命令加上-b參數表示創建並切換,相當於以下兩條命令:

git branch dev

git checkout dev

17、查看當前分支

git branch

git branch命令會列出所有分支,當前分支前面會標一個*號

18、git merge命令用於合併指定分支到當前分支

git merge dev

19、刪除本地分支

git branch -d dev

20、刪除遠程dev分支

git push origin :dev

21、切換分支

git checkout <name>

22、查看遠程庫的信息

git remote 或 git remote -v

23、推送分支,就是把該分支上的所有本地提交推送到遠程庫。推送時,要指定本地分支,這樣,Git就會把該分支推送到遠程庫對應的遠程分支上:

git push origin master

如果要推送其他分支,比如dev,就改成:

git push origin dev

24、拉取分支

git pull

相關焦點

  • Git命令解析-patch、apply、diff
    除了這兩個自動化的命令,我們也可以手動逐步實現這一過程。Part 1無論是merge還是rebase,都是在同一個工作目錄中協調差異,處理變更歷史。而git的另一些命令,允許開發者單獨保存,或者通過文件或郵件的方式與別人分享這些差異。這有助於更靈活的選擇和使用某些較為獨立的更改。這有點類似另一類版本控制系統的工作方式:存儲差異而不是快照。
  • 工作流一目了然,看小姐姐用動圖展示10大Git命令
    、git reset、git revert、git fetch、git pull、git reflog……你知道這些 git 命令執行的究竟是什麼任務嗎?在本文中,熟知 JavaScript、TypeScript、GraphQL、Serverless、AWS、Docker 和 Golang 的 21 歲年輕軟體顧問 Lydia Hallie 通過動圖形式直觀地介紹了這些常用 git 命令的工作過程,包你過目不忘。
  • 你需要知道的 12 個 Git 高級命令 - OSCHINA - 中文開源技術交流...
    使用Git時常用的命令有pull、commit、push等,貌似很簡單。不過,有時你會遇到合併衝突的情況,Git這時會將衝突標記出來,需要你手工來解決。有時,你會不小心將代碼提交到錯誤的分支上,並且又推送到了遠程倉庫。還有些時候,你需要切換到不同的分支,但Git卻不讓你這麼做,因為還有未保存的修改。如果需要通過另一個分支的提交來為代碼打補丁該怎麼做呢?
  • 一起學習分布式管理工具git
    或者 git checkout HEAD <file> 命令時,會用 HEAD 指向的 master 分支中的全部或者部分文件替換暫存區和以及工作區中的文件。這個命令也是極具危險性的,因為不但會清除工作區中未提交的改動,也會清除暫存區中未提交的改動。2.創建倉庫git init命令用來初始化一個倉庫,執行該命令會生成一個.git目錄。
  • Linux之父帶1.2億程式設計師如何深度剖析Git底層原理文檔
    所以開始第一篇,很簡單,就是Git的操作指令,不錯,如果你會Linux的話,很多東西對你來說比較簡單的,好多命令可以通用第二部分建立分支、合併和解決衝突當可以正常使用軟體之後,接下來就是對於程序提交的管理工作,畢竟項目開發過程中摻雜著多人之間的協作問題,就像Linux有近兩萬人提交升級修改,那Git是如何去解決這個問題呢?
  • 超詳細的Shell中特殊字符的用法總結大全
    超詳細的Shell中特殊字符的用法總結大全 Linux下無論如何都是要用到shell命令的,在Shell的實際使用中,有編程經驗的很容易上手,但稍微有難度的是shell裡面的那些個符號,各種特殊的符號在我們編寫Shell腳本的時候如果能夠用的好,往往能給我們起到事半功倍的效果,那麼這些特殊符號所代表的意思你知道嗎
  • 小介詞大用法之at用法總結
    前面我們講過in的常用用法,有一點需要補充,in還可以加一段時間,比如in two days,一般表示在兩天之內,是一般將來時的時間標誌。正式進入今天的主題,at有很多用法,首先可以加時間點——at 6 O'clock 在六點整,其次,at還可以加小地方,這一點區別於in的用法,舉例,常用的有:at home, at school等,再其次,at還可以加節日,比如at Christmas,.at Halloween,
  • 大型倉庫git clone性能優化之部分克隆
    和之後的所有操作中,所需的任何blob將需要按需下載,比如:git checkout feature-branch按路徑排除對象部分克隆允許使用與倉庫文件忽略配置.gitignore類似的格式按路徑過濾克隆。
  • 完全解析Rsync命令的17個備份選項|rsync|算法|exclude|include...
    常常備份是良好的習慣,只是這麼好習慣只有在無數次的頓足捶胸、呼天搶地的懊惱之後,才會勉勉強強慢慢地養成,備份最常用的命令是:  rsync -avl source destination  3)排除和包含特定的文件與目錄  同步的過程中,我們常常需要排除掉dot文件,比如.git.ssh等,exclude命令就有了用武之地  --exclude={.ssh,.git,.config}   -exclude-from=FILE選項提供了更貼心的服務,我們可以將經常要排除掉的目錄寫進專門的文件
  • vim命令使用總結
    vim 共有三種模式:命令模式:用vim打開文件就進入了命令模式;輸入模式:在命令模式輸入i/I/a/A/o/O就進入輸入模式;在輸入模式下按鍵esc,則退出輸入模式進入命令模式底線模式:在命令模式按下英文冒號:就進入了底線模式;二. vim命令使用總結2.1 光標移動(1)光標上下左右移動(鍵盤的上下左右四個鍵):
  • 英語中疑問代詞的基本用法總結
    英語中疑問代詞的基本用法整理如下:一、疑問代詞的概念和形式用來表達疑問或者構成疑問句的代詞叫疑問代詞。主要的疑問代詞及其功能如下:二、疑問代詞的基本用法(一)who在句中多用作主語或表語Who told you ?誰告訴你的?- Who are those girls ?
  • 冒號的用法之「總結上文」應用舉例(2)
    鑑於不少朋友不會使用「冒號」來總結上文,6月1日我曾經發過《冒號的用法之「總結上文」應用舉例》一文(點擊紅色標題可閱讀原文)。例句(14)中,「因此」及其後的內容是總結前邊2個分句的,其前邊的句號應改為冒號;而現在這樣用的是句號,則把這個完整的句子割裂開來,意思就不連貫了。
  • 【乾貨】華為VRP基礎和常用命令了解一下!
    配置某一功能時,需首先進入對應的命令行視圖,然後執行相應的命令進行配置。 設備提供的命令視圖有很多,下面提到的視圖是最常用的視圖。 常用的命令行視圖 用戶視圖 用戶從終端成功登錄至設備即進入用戶視圖,在屏幕上顯示
  • 是時候表演真正的技術了——11個Git面試題目,你會多少?
    3: 「git pull」和「git fetch」之間有什麼區別? 簡單來說,git pull 是 git fetch + git merge。 當你使用 pull,Git 會試著自動為你完成工作。它是上下文(工作環境)敏感的,所以 Git 會把所有拉取的提交合併到你當前處理的分支中。 pull 則是 自動合併提交而沒有讓你複查的過程。
  • Python-調用系統命令的方法
    用法:os.system("command")os.popen()這種調用方式是通過管道的方式來實現,函數返回是 file read 的對象,對其進行讀取read、readlines等操作可以看到執行的輸出。注意:如果命令執行失敗,就讀取不到內容。
  • 乾貨|分享幾個不過時的DOS命令,需要的請收藏
    說明一下,如果-t 參數和 -n參數一起使用,ping命令就以放在後面的參數為標準,比如"ping IP -t -n 3",雖然使用了-t參數,但並不是一直ping下去,而是只ping 3次。另外,ping命令不一定非得ping IP,也可以直接ping主機域名,這樣就可以得到主機的IP。下面我們舉個例子來說明一下具體用法。
  • DOS命令大全,黑客必知的DOS命令集合
    if命令及變量) goto 標籤 將cmd.exe導向到批處理程序中帶標籤的行(標籤必須單獨一行,且以冒號打頭,例如:「:start」標籤) call 路徑批處理文件名 從批處理程序中調用另一個批處理程序 (更多說明見call /?)
  • 小介詞大用法之in的用法總結
    曾經有的專家總結過,初中階段的英語只要搞定四個方面,考試就是小case了。那麼哪四個方面呢?它們分別是介詞,詞性,從句和非謂語。有的同學說介詞不就是in,on,at這些嗎?有什麼好說的呢?非也,想要真正學好介詞,其實需要下一番功夫的。
  • 歐美人常用我們卻不熟悉的詞彙和用法總結
    原標題: 歐美人常用我們卻不熟悉的詞彙和用法總結 原來生活中有很多老外很常用而我們卻不熟悉的詞兒。今天就為大家總結如下。 assignment:一項作業,強調某一項 work:老外不太說homework,直接說「I have so much work to do" curve:正態,用法靈活,可做名詞或動詞 Does it make sense? 英國老師最愛說的話,是問你明白了沒有。這樣比問do you understand 更禮貌一些。
  • SVN子命令add用法淺析
    SVN子命令add用法淺析 本文和大家簡單介紹一下SVN子命令add的使用方法,主要包括概念的介紹,以及通過實例講解SVN子命令add用法,在這裡和大家分享一下,希望大家共同學習。