1. 程式人生 > >Git 基礎命令操作指引

Git 基礎命令操作指引

1.Git 初始化

  • Create a new repository
    git clone [email protected]*******/test.git
    cd test
    touch README.md
    git add README.md
    git commit -m "add README"
    git push -u origin master
  • Existing folder or Git repository
    cd existing_folder
    git init
    git remote add
origin [email protected]@*******/test.git git add . git commit

2.Git Config

  • config 配置檔案位置
All User : /etc/gitconfig
Current User : ~/.gitconfig
  • config 檢視
git config --list
  • config 設定
git config --global user.name "xxx"
git config --global user.email "[email protected]
"

3.Git 基礎命令

  • git status

    檢視git倉庫檔案狀態, git檔案狀態如下所示。

    unstaged - git倉庫中沒有此檔案的相關記錄 
    modified - git倉庫中有這個檔案的記錄,且此檔案當前有改動 
    staged - 變更的檔案被暫存,沒有提交到倉庫 (git add命令之後)
    commited - 檔案被提交到本地git倉庫 (git commit之後)
  • git log

    檢視歷史commit記錄

  • git add

  git add file/fileDir         #modified或unstaged的檔案轉換為staged狀態
git add -A/--all #modified或unstaged的所有檔案轉換為staged狀態
  • git rm
  git rm test.java             #從git倉庫刪除test.java檔案,同時刪除本地檔案
  git rm  --cache test.java    #從git倉庫刪除test.java檔案,不刪除本地檔案
  • git commit
  git commit -m "xxx comment"    #staged狀態轉換為commited狀態
  • git diff
  git diff file-path           #檢視自己本次要提交的檔案有哪些改動
  • git pull
  git pull [remote-name branch-name]  #獲取遠端伺服器資料,並同時與本地資料合併(可能會出現衝突)
  • git fetch
git fetch [remote-name]     #(獲取倉庫的所有更新,但是不自動合併當前分支)
git fetch -p                #(獲取倉庫的所有更新,且自動刪除不需要的分支,更新最新的分支下來)
  • git push
  git push [remote-name branch-name]         #上傳資料到遠端分支,若出現衝突,則上傳失敗。
  git push --force [remote-name branch-name] #強制上傳資料到遠端分支**,(覆蓋遠端資料,慎用)**
  • git stash

    可用來暫存當前正在進行的工作,比commit簡單,而且可以跨分支合併

    git stash                    #暫存更改的內容
    git stash save "comment"     #暫存更改的內容,帶註釋
    git stash list               #顯示所有暫存的內容 

    git show stash@{0}           #顯示指定stash的更改內容,類似於git diff 

    git stash apply stash@{1}    #應用指定編號的stash, 但不從stash-list中清除
    git stash pop                #應用棧頂的stash,並從stash-list清除該記錄
    git stash clear              #清除stash-list

    git stash --help             #獲取更多的資訊

3.Git 分支

  • git branch
  git branch                  #檢視本地分支列表
  git branch -r               #檢視遠端分支列表
  git branch -a               #檢視所有分支
  git branch -d branch-name   #刪除指定分支
  git branch -D branch-name   #強制刪除指定分支
  • git checkout
  git checkout branch-name                         #切換到指定分支 (切換前記得先commit或者stash)
  git checkout -b new-branch-name                  #基於當前分支建立一個新分支
  git checkout -b branch-name origin/branch-name   #獲取遠端分支到本地 
  git checkout file-name                           #獲取遠端最新檔案
  git checkout -- .                                #放棄本地所有的modify檔案改動
  • add remote branch
  1.git checkout branch-name              #切換到要上傳的分支
  2.git remote add origin branch-name     #新增遠端分支
  3.git push origin branch-name            #推送資料到遠端分支 (自動建立分支,step2可省去)  
  • delete remote branch
  git push origin :remote-branch         #刪除指定遠端分支

4.Git 分支合併

  • git merge
  1. git merge branch-name                 #合併指定分支內容到當前分支
  2. git add -A                            #手動解決衝突後,重新暫存
  2. git commit -m "xxx 解決衝突"           #再次提交
  • git cherry-pick
  1. git cherry-pick commit-id         #合併指定commit到當前分支
  2. git add -A                        #手動解決衝突後, 重新暫存
  3. git cherry-pick -- continue       #繼續剛才的pick操作,這一步容易忘記
  4. git cherry-pick -- abort          #放棄cherry-pick操作

5.Git 修改與撤銷

  • git reset
    git reset HEAD file          #將檔案從staged轉換為unstaged
    git reset HEAD .             #將所有檔案從staged轉換為unstaged
    git reset --mixed commit-id  #預設方式,回退到指定個版本,只保留原始碼,回退commit和index資訊

    git reset --soft commit-id   #回退到某個版本,只回退了commit的資訊,
                                 #不會恢復到index file級。如果還要提交,直接commit即可   

    git reset --hard commit-id   #徹底回退到某個版本,本地的原始碼也會變為上一個版本的內容
  • git reflog

    顯示所有過去commit歷史,可用來挽救–hard的誤操作

  • git rebase
    (1) git rebase -i commit-id   #在vi編輯器中,顯示commit-id到最新的所有commit記錄
    (2) git rebase -i HEAD~10     #在vi編輯器中,顯示最新10commit記錄
    (3) 在vi編輯器中, 修改commit內容, wq儲存
    (4) git add -A                #解決衝突後,暫存檔案
    (5) git rebase --continue     #完成未完成rebase操作
    (6) git rebase --abort        #完成未完成rebase操作

在vim編輯器中,常見幾種操作方式,顯示如下,

    # 修改前
    pick 8e5da5f test-comment-1 
    pick 627a433 test-comment-2 
    pick 627a433 test-comment-3 
    pick dcc8310 test-comment-4 
    # commit-id更改
    pick 8e5da5f test-comment-1 
    pick 627a433 test-comment-2 
    r 627a433 修改後的內容 
    pick dcc8310 test-comment-4 
    # commit-id換序
    pick 8e5da5f test-comment-1 
    pick 627a433 test-comment-3 
    pick 627a433 test-comment-2 
    pick dcc8310 test-comment-4 
    # commit-id刪除 
    pick 8e5da5f test-comment-1 
    pick 627a433 test-comment-2 
    pick dcc8310 test-comment-4 
    # commit-id 3 與 4合併
    pick 8e5da5f test-comment-1 
    pick 627a433 test-comment-2 
    pick 627a433 test-comment-3 
    s dcc8310 test-comment-4 

相關推薦

Git 基礎命令操作指引

1.Git 初始化 Create a new repository git clone [email protected]*******/test.git cd

git 基礎命令操作

3. git基礎命令操作(1) 修改檔案,並把修改後的檔案提交到版本庫 1.txt的內容是:this is a test, file name 1.txt。 現在修改其中的內容新增一行 this is

git基礎命令

所有 文件夾 遠程服務器 url add 服務器 遠程 nbsp comm 創建一個新的本地倉庫 git init 克隆遠程服務器 git clone URL 打開一個文件夾 cd 添加文件 git add . 本地提交更改 git commit

Git基礎命令使用(個人總結)

down class 一次 onf set .net remote odin -a 個人在開發中整理常用的git命令,相信很多人會需要到的。 全局配置信息: git config --global user.name "Your name"

git 常用命令操作

命令操作 用戶名 每次 github blog mail 客戶端 strong str 目錄 一、用戶和郵箱     用戶和郵箱的作用     查看用戶名和郵箱地址     修改用戶名和郵箱地址 用戶名和郵箱地址的作用 用戶名和郵箱地址是本地git客戶端的一個變

git 基礎命令

local 方法 git push -m 刪除 直接 OS oca 分支 1、創建本地分支 local_branch git branch local_branch 2、創建本地分支local_branch 並切換到local_branch分支 git

git基礎命令

現在 括號 IT add 就會 功能 git commit git rm git init : 初始化一個倉庫,也就是新建一個倉庫 git clone : 克隆一個倉庫,就是復制一份代碼過來,通過 http、ssh、 git協議 ,可以在URL後 加 一個參數 當

Linux 基礎命令操作

watermark 屬性信息 bsp 刪除目錄 臨時 lib 分享圖片 括號 簡單 date 系統時間 clock 查看硬件時間 clock -w 或clock --systohc 將系統時間同步到硬件時間 clock -s 或 clock --hctosys

Linux常用基礎命令操作(二)

cube 邊界 命令 family 轉義 linu 追加 rwx linux 10 >輸出重定向 文件不存在則創建文件,文件存在則清空內容 放入>左邊的內容 比較危險 建議備份後操作 >>追加輸出重定向,在文本結尾追加內容,不刪除原內

git常用命令操作

目前市場主流的版本控制系統主要分為:集中式版本控制系統與分散式版本控制系統。集中式版本控制目前主流的:SVN分散式版本控制系統目前主流的:Git 兩者之間的區別: 集中式有中央伺服器,開發人員需要從中央伺服器獲得最新版本的專案然後在本地開發,開發完推送到中央伺服器中,因此無法脫離伺服器。 分散式沒有中央伺

新手之git常用命令操作

有不對的歡迎指出,交流   1.git賬號訊息設定: git config --global --replace-all user.email "輸入你的郵箱"  git config --global --replace-all user.name "輸入你的使

Cisco Packet Tracer中的基礎命令操作以及組織網路實驗

基於思科模擬器的路由基礎命令操作 1.開啟Cisco packet tracer,選取路由器Router2811(example) 2.雙擊該路由器,在彈出的視窗選擇 CLI 選項,啟動後輸入no,回車即可進入路由器的使用者模式,若要進行對話方塊配

redis 基礎命令操作

redis 基礎命令操作 1、設定鍵的過期時間 expire key seconds //設定秒 expireat key timestamp //設定毫秒 2、檢視鍵剩餘生存時間 ttl key //返回秒 pttl key //返回毫秒 3、 pexpireat key millis

docker 基礎命令操作 映象以及容器的基本操作演示

tomcat啟動後’,可以通過頁面訪問到預設頁面,可以更加直觀的顯示出來;我們就以tomcat為例,對映象,容易的基礎操作進行演示; 1.查詢映象命令 docker search tomcat , 執行後,出現一個列表,表頭的相關資訊,看名字,可以很容易的理解,分別是

git 基礎命令02

 eclipse整合git部落格: http://blog.csdn.net/s164828378/article/details/51723698     1、 git status -s      &nb

linux基礎命令操作

基礎命令操作: 顯示日期的命令:date     [[email protected]]$date+%Y/%m/d%  日期顯示格式:年/月/日     [[email protected]]$date+%H/%M  日期顯示格式:時/分 顯示日曆的命令

Git基礎命令彙總

彙總表如下所示 命令 作用 注意事項 git clone 把遠端倉庫取到本地 可能會需要輸入GitHub的帳戶名和密碼,其中密碼時不顯示輸入的 gi

Linux 的基礎命令操作圖解

1 .Linux 目錄結構 /boot  啟動目錄,核心存放地 /tec  配置檔案存放地 /tmp  程式產生的臨時檔案 /home  使用者的目錄,每個使用者有一個home /lib  庫檔案

Git基本命令操作補充

檢視分支 檢視本地分支git branch 檢視遠端分支git branch -r 檢視所有分支 git branch -a pull遠端指定分支(本地無對應分支)

openshift 基礎命令操作 簡單建立一個mysql應用

啟動openshift叢集oc  cluster  up  #(啟動叢集--help以獲取更多資訊)登入認證使用者oc login -u test   #登入測試使用者oc login -u system:admin -n default  #登入系統管理員,預設本地免密登入