Git自學與掉坑實錄(一)

目錄

Git自學與掉坑實錄(一)
· 創建版本庫
· 添加提交文件至版本庫

Git自學與掉坑實錄(二)
· 本地文件的修改與提交
· 多版本之間的切換
· 查看版本歷史
· 忽略特殊文件

Git自學與掉坑實錄(三)
· 工作區、暫存區、版本庫的概念
· 進行到各個階段管理(添加、刪除、恢復、修改)文件的方法

Git自學與掉坑實錄(四)
· 遠程倉庫
· Github的入門說明
· 參與開源項目

Git自學與掉坑實錄(五)
· 管理(創建、合并、刪除)分支
· 解決沖突
· Fast forward模式與禁用(是否顯示合并信息)
· bug分支
· 功能分支
· 多人協作(查看信息、推送遠程庫、抓取)

Git自學與掉坑實錄(六)
· 創建標簽
· 刪除標簽(本地與遠程)

Git自學與掉坑實錄(七)
· 顯示代碼顏色
· 忽略文件與強制添加某些忽略文件
· 搭建Git服務器

<br />
該自學筆記是本人從零基礎開始學習Git,記錄在自學過程中遇到的知識盲點和掉過的坑。如果有理解偏差的地方,歡迎大家指出。
<br />

一、背景

Git是一個開源的分布式版本控制系統,可以有效、高速的處理從很小到非常大的項目版本管理。

分布式版本控制,即每個人的電腦上都是一個完整的版本庫。當多人協作時,多人在各自本地電腦上修改了同一個文件,只需要把各自的修改推送給對方,就可以互相查看對方的修改內容。


[《Git:Git起步》文章配圖](http://lib.csdn.net/article/git/12354?knId=742)

在我看來,有點類似teambition、tower等項目的協作工具,只不過這些協作工具幫助各部門的進度對接,Git是對迭代版本的控制和管理。

而開源的形式,既能給我這樣的新手提供代碼素材,也能讓技術大神提出改進的意見。就這點看來又有點像代碼界的iconfont。

Git與其他系統相比,只關心文件數據的整體是否發生變化,若文件沒有變化,Git不會再次保存,而是鏈接到上次的保存內容。


[《Git:Git起步》文章配圖](http://lib.csdn.net/article/git/12354?knId=742)

<br />

二、安裝Git

1.Mac系統有三種安裝方式:
a.使用Homebrew安裝。
b.用Xcode安裝。運行Xcode,選擇菜單"Xcode"→"Preferences"→"Downloads",選擇"Command Line Tools",點"Install"完成安裝。

Command Line Tools 是命令行工具,比如 Mac OS 上的 Terminal 就是,用來以文字命令行執行一些查詢和編輯操作,而有些需要超級管理員權限的操作也都可以經由命令行工具來執行,比如 sudo。
新版Xcode并沒有看到"Downloads",所以我選擇c。

c.到Apple Developer下載安裝

沒有賬號的小伙伴記得先注冊再登錄。

搜索"Command Line Tools"
選擇下載版本

2.驗證安裝結果
輸入命令$(查看git版本):git --version

說明Git已經安裝

如果git出現問題,可以嘗試
輸入命令$(查看git安裝位置) which -a git
輸入命令$(進入目錄) cd /usr/local/bin/
輸入命令$(徹底刪除)sudo rm -rf git*

3.信息設置
輸入命令$("Your Name"替換你的名字) git config --global user.name "Your Name"
輸入命令$("email@example.com"替換你的郵箱) git config --global user.email "email@example.com"

<br />

三、本地版本庫管理

版本庫,又名倉庫(repository,縮寫repo),每個倉庫可以簡單理解成一個目錄,這個目錄里面的所有文件都通過Git來實現版本管理(包括修改、刪除、增加),Git都能通過".git"文件夾來實現跟蹤并記錄在該目錄中發生的所有更新。

1.創建一個版本庫
輸入命令$(創建一個空目錄)mkdir learngit
輸入命令$(進入learngit的目錄)cd learngit
輸入命令$(查看learngit的完整路徑)pwd

pwd命令用于顯示當前目錄:
/Users/用戶名/Documents/blog 表示倉庫位置

2.管理版本庫
輸入命令$(本地目錄learngit初始化):git init

3.得到結果


現在,我們已經創建好了一個新的、空的倉庫(empty Git repository),并且會多一個.git的目錄。

如果你看不到.git目錄,很可能是文件隱藏了,教程還是推薦了兩個辦法:
a.輸入命令$(顯示全部隱藏文件)defaults write com.apple.finder AppleShowAllFiles Yes +輸入命令$(重啟Finder) killall Finder
輸入命令$(不顯示全部隱藏文件)defaults write com.apple.finder AppleShowAllFiles No +輸入命令$(重啟Finder)killall Finder
b.輸入命令$(顯示該目錄隱藏文件)ls -a

而這兩個辦法我都沒辦法看到.git文件夾,最后通過"前往"→輸入"/Users/用戶名/learngit/.git"打開該文件夾。


<br />

四、添加文件至版本庫

1.編寫一個wil.txt文件,內容為:
"Gold jewelry shining so bright.
Strawberry champagne on ice.
Lucky for you that's what I like that's what I like."


mac創建.txt文件
· 打開系統自帶"文本編輯",輸入文本內容;
· 選擇"多信息文本文稿"儲存,得到一個.rtf文件;
· 右鍵該文件,選擇"顯示簡介";
· 將.rtf直接改成.txt,修改后綴后確定"使用.txt";
· 將格式改為純文本(避免預覽內容亂碼);


· 完成。

2.將該文件放入Git倉庫
· 將"wil.txt"移動到"learngit"目錄下;
· 輸入命令$(添加到倉庫):git add wil.txt
· 輸入命令$(提交到倉庫):git commit -m "test"

-m后面輸入的是本次提交說明,可以輸入任意內容,可以方便我們從歷史記錄里找到改動。

拓展:添加(多個文件用空格隔開)和提交的動作都可以批量進行
$ git add file1.txt
$ git add file2.txt file3.txt
$ git commit -m "add 3 files."

版本添加成功

"1 file changed, 3 insertions(+)"表示,1個文件被改動(新添加的wil.txt),插入了三行內容(wil.txt有三行內容)。

· 如果有小伙伴發現,"insertions"的數量不對,可以看一下.txt的簡介預覽是否有亂碼。本人就被亂碼坑過,記得將"格式"改為"純文本"。


· 如果有小伙伴顯示如下圖,說明你的姓名與郵箱還未設置,按紅框內輸入命令即可,或見本文"二、安裝Git-3.信息設置"。


<br /><br />

小結

$ git --version #查看git版本。
$ mkdir filename#創建一個空目錄。
$cd filename #前往該目錄。
$ pws#顯示當前目錄路徑。
$ git init#初始化目錄。
$ git add file #添加文件到倉庫。
$git commit -m "aaa " #提交文件到倉庫,并說明aaa。

<br /><br /><br /><br /><br /><br /><br />

主要參考:

· 廖雪峰Git教程

其他文章與資料:

· Git Step by Step – (2) 本地Repo
· Git:Git起步
· GIT

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 227,702評論 6 531
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 98,143評論 3 415
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 175,553評論 0 373
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 62,620評論 1 307
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 71,416評論 6 405
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 54,940評論 1 321
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,024評論 3 440
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 42,170評論 0 287
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 48,709評論 1 333
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 40,597評論 3 354
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 42,784評論 1 369
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,291評論 5 357
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 44,029評論 3 347
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 34,407評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 35,663評論 1 280
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 51,403評論 3 390
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 47,746評論 2 370

推薦閱讀更多精彩內容