1. 程式人生 > >GIT 使用教程-廖雪峰

GIT 使用教程-廖雪峰

一、建立本庫

1.初始化一個Git倉庫:git init
2.新增檔案到Git倉庫:1、git add < filename > ; 2、git commit [] 備註資訊

二、時光機穿梭

1.檢視工作區狀態,檔案是否被修改過:git status
2.檢視修改的內容:git diff

1、版本回退

1.HEAD : 表示當前版本
2.HEAD^:表示上一個版本
3.定位版本資訊: git reset –hard commit_id
4.git log : 穿梭前 用git log 看提交歷史,以方便要回退到哪一個版本
5.git reflog:要重返未來,用git reflog 檢視命令歷史 以便確定要回到未來的哪一個版本。

2、工作區和暫存區

  1. 工作區:就是你在電腦裡面能看到的目錄 比如我的learngit資料夾就是一個工作區
  2. 版本庫:工作區有一個隱藏目錄.git,這個不算工作區,而是Git的版本庫。
  3. 暫存區:Git的版本庫裡存了很多東西,其中最重要的就是stage 的暫存區

      第一步是用git add 把檔案新增進去,實際上就是把檔案修改新增到暫存區;
      第二步是用git commit提交更改,實際就是把暫存區中的所有內容都提交到當前分支
    

3、管理修改

1.每次修改,如果不add到暫存區,就不會計入到commit中

4、撤銷修改

1.git checkout –file:丟棄工作區的修改
2.git reset HEAD file:把暫存區的修改撤銷掉,重新放回到工作區

5、刪除檔案

1.git rm:從版本庫中刪除檔案

三、遠端倉庫

1、新增遠端庫

1.關聯一個遠端庫:git remote add origin [email protected]:path/repo-name.git
2.關聯後第一次推送master分支所有內容:git push -u origin master
3.此後,每次本地提交後,只要有必要,就可以使用命令git push -u origin master 推送就新修改。

2、從遠端庫克隆

1.要克隆一個倉庫,首先必須知道倉庫的地址,然後使用git clone 命令克隆
2.Git支援多種協議,包括https,但通過ssh支援的原生git協議速度最快

四、分支管理

1、建立與合併分支

1.檢視分支:git branch
2.建立分支:git branch < name >
3.切換分支:git checkout < name >
4.建立+切換分支:git checkout -b < name >
5.合併某分支到當前分支:git merge
6.刪除分支:git branch -d < name >

2、解決衝突

1.檢視分支合併圖:git log –graph
eg:git log –graph –pretty =online –abbrev -commit

3、分支管理策略

  1. 合併分支時加上–no-ff引數:普通模式合併,合併後的歷史有分支,禁用fast forward
    eg:git log –no-ff-m”merge with no–ff”dev

4、Bug分支

1.git stash:把當前工作現場隱藏起來,去修復bug
2.git stash pop:恢復工作現場同時刪除stash內容

5、Feature分支

1.開發一個新feature,最好新建一個分支;
2.如果要丟棄一個沒有被合併過的分支,可以用過git branch -D < name >強行刪除

6、多人協作

1.git remote -v:檢視遠端庫資訊
2.git push origin branch-name:從本地推送分支
3.git pull:推送失敗時,抓取遠端的新提交
4.git checkout -b branch-name origin/branch-name :從本地建立和遠端分支(本地和遠端分支的名稱最好一直)
5.git branch –set-upstream branch-name origin/branch-name:建立本例分支和遠端分支的關聯

五、標籤管理

1、建立標籤

1.git tag < name >:新建一個標籤(預設為HEAD,也可以指定commit id)
2.git tag -a < tagname > -m “……”:可以指定標籤資訊
3.git tag -s < tagname > -m“…….”:可以用PGP簽名信息
4.git tag :檢視所有標籤

2、操作標籤

1.git push origin < tagname >:推送一個本地標籤
2.git push origin –tags:推送全部未推送過的本地標籤
3.git tag -d < tagname >:刪除一個本地標籤
4.git push origin:refs/tags/< tagname >:刪除一個遠端標籤

6、使用GitHub

1.在GitHub,可以任意Fork開源倉庫;
2.自己擁有Fork後的倉庫的讀寫許可權;
3.可以推送push request給官方倉庫來貢獻程式碼。

7、自定義Git

1、忽略特殊檔案

1.忽略某些檔案時,需要編寫.gitignore;

2、配置別名

①我們只需要敲一行命令,告訴Git,以後st就表示status:git config –global alias.st status
 eg:
gitconfigglobalalias.cocheckout git config –global alias.ci commit
$ git config –global alias.br branch

gitconfigglobalalias.unstageresetHEAD git config –global alias.last ‘log -1’

git config –global alias.lg “log –color –graph –pretty=format:’%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset’ –abbrev-commit”

3、搭建Git伺服器

GitHub就是一個免費託管開原始碼的遠端倉庫。但是對於某些視原始碼如生命的商業公司來說,既不想公開原始碼,又捨不得給GitHub交保護費,那就只能自己搭建一臺Git伺服器作為私有倉庫使用。
例如大眾點評code.dianpingoa.com

相關推薦

Git教程-雪峰——學習筆記(一)

      按照教程學習了git工具的簡單使用,目前最先進的分散式版本控制系統,無論是從GitHub上學習他人的程式碼,還是儲存自己的程式碼都非常有用。        按照教程練習了一遍程式碼,這裡總結一下: 一.建立版本庫   1.開啟git工具,用下面的指令可以

Git教程-雪峰——學習筆記(二)

三.遠端庫和建立賬號 建立SSH Key,空格一定要注意,然後先提前在GitHub上註冊賬號 四.分支管理 建立並切換到dev,然後用git branch檢視分支 切回master,並且將工作成果合併到master 刪除dev分支,檢視branch,只剩

GIT 使用教程-雪峰

一、建立本庫 1.初始化一個Git倉庫:git init 2.新增檔案到Git倉庫:1、git add < filename > ; 2、git commit [] 備註資訊 二、時光機穿梭 1.檢視工作區狀態,檔案是否被修改過:g

【Python教程-雪峰】Python簡介

文章來自: 僅供交流學習,歡迎指導。 ----------------------------------------------------------------- Python有一個缺點就是程式碼不能加密。如果要釋出你的Python程式,實際上就是釋出原始碼,

【Python教程-雪峰】使用dict和set

  文章來自: 僅供交流學習,歡迎指導。 ----------------------------------------------------------------- 一、 和list比較,dict有以下幾個特點: 查詢和插入的速度極快,不會隨著key的增

Python教程--雪峰練習參考彙總(一)

題源:廖老師的官網 小生全是為了方便後期程式碼整理,從多篇大佬中的文章引用了程式碼,如有冒犯之處,請聯絡小生。 練習 小明的成績從去年的72分提升到了今年的85分,請計算小明成績提升的百分點,並用字串格式化顯示出’xx.x%’,只保留小數點後1位: #

git常用命令,參照雪峰老師的git教程

哪裏 -h 官網 ... 出現 -m git的常用命令 還原 style git的常用命令 寫在開篇: 作為一個菜鳥,我想學習的最好的方式就是邊學邊記筆記,這裏只是本人寫的自己通過學習了廖雪峰老師的git教程之後自己做的筆記,個人理解,可能有失偏頗,如想學習更專業更權威的g

雪峰Git入門教程

img span alt 分享圖片 des HR lean git入門 -c 廖雪峰Git入門教程 2018-05-24 23:05:11 0 0 0 https://www.liaoxuefeng.com/wiki/00137395163059

雪峰git教程學習筆記3

common 引入 tags git tag git clone 說明文 hub commit nbsp commit是一串不便記憶的數字,為了方便記憶,引入tag,tag就跟HEAD一樣,就像一個指針,指向commit,且指向是不能變得,一個commit就有一個tag

git常用命令總結--雪峰老師Git教程命令總結

應該 都是 sta really nbsp mic dex ali 最快 學習了廖雪峰老師的Git教程之後的命令總結,重點關於git和遠程倉庫的東西。 如果沒有學過,這是傳送門 下面這個圖很重要 一、git初始化本地倉庫和配置   echo "想輸入到

【學習總結】Git學習-參考雪峰老師教程

公元2018-10-21 實驗室桌上型電腦 win7 64位 參考教程: 廖雪峰Git教程 目錄: 一、Git簡介 二、安裝Git 三、建立版本庫 四、時光機穿梭 五、遠端倉庫 六、分支管理 七、標籤管理 八、使用GitHub 九、使用碼雲 十、自定義Git 期末總結 此處留坑:

git基本命令(基於雪峰git教程

建立版本庫(在合適的位置): $ mkdir learngit(目錄名) $ cd learngit(檔名) 顯示當前目錄: $ pwd 將目錄變成Git可以管理的倉庫: $ git init 將檔案新增到倉庫: $ git add <file> 將檔

雪峰Git教程---確實是史上最易懂的Git教程

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!        

雪峰老師Git教程程式碼梳理

建立版本庫  建立一個版本庫非常簡單,首先,選擇一個合適的地方,建立一個空目錄(repository): $ mkdir learngit //建立learngit目錄 $ cd learngit //切換當前目錄為learngit目錄 $ pwd //用於顯示

Python 爬蟲:把雪峰教程轉換成 PDF 電子書

網絡 odi 變量 turn chrome github htm git 臨時文件 寫爬蟲似乎沒有比用 Python 更合適了,Python 社區提供的爬蟲工具多得讓你眼花繚亂,各種拿來就可以直接用的 library 分分鐘就可以寫出一個爬蟲出來,今天嘗試寫一個爬蟲,將廖雪

雪峰git學習筆記

建立 tab sta ssh xxxx 放棄 系統 方式 哪些 安裝完後,每個機器都要自報家門 Config--配置 global--全局參數 配置全局用戶名 $git config --global user.name “Your N

Python 學習從雪峰 Python教程開始

https info python 學習 分享 圖片 png wiki src ima https://www.liaoxuefeng.com/wiki/0014316089557264a6b348958f449949df42a6d3a2e542c000 Python 學習

python 協程(單線程中的異步調用)(轉雪峰老師python教程

層級 while 完全 多核 span lose produce 搶占 css 協程,又稱微線程,纖程。英文名Coroutine。 協程的概念很早就提出來了,但直到最近幾年才在某些語言(如Lua)中得到廣泛應用。 子程序,或者稱為函數,在所有語言中都是層級調用,比如A調用B

雪峰--python教程:筆記三

[1] 小寫 對象 gin collect 內置函數 返回值 python 字典 通過 高級特性:前面我們簡單的聊了一下Python的數據類型、語句和函數,接下來來聊聊Python的高級特性 切片:取一個list、tuple、str一部分內容是很常見的操作,而切片操作,可以

git 快速上手(學習雪峰blog筆記)

git 學習 1. git add file1… 新增本地庫檔案到倉庫,未提交狀態 git add -A 提交所有變化 git add -u 提交被修改(modified)和被刪除(deleted)檔案,不包括新檔案(new) git add . 提交新檔案(n