Github學(xué)習(xí)文檔-2


style: candy

牽手GitHub.jpg

目錄

1 GitHub 和 Git 的前世今緣


Git百度百科

你可能會(huì)問(wèn)學(xué)習(xí) GitHub 和 Git 有什么關(guān)系嗎?首先 GitHub 的功能本身就是基于 Git 來(lái)實(shí)現(xiàn)×坷ⅲ現(xiàn)在的問(wèn)題是 Git 是什么袋坑?Git 是一個(gè)開(kāi)源的分布式版本控制系統(tǒng),簡(jiǎn)單的來(lái)說(shuō)就是一個(gè)強(qiáng)大的版本管理工具橄抹,GitHub 因?yàn)榧闪?Git,所以具有版本管理的功能美尸,在加上自身的社區(qū)功能鞠柄,如訂閱,討論械馆,關(guān)注胖眷,分享代碼片段等。Git 是 Linux 之父—— Linus 兩周周寫(xiě)成的(在此默默崇拜大牛5秒鐘)霹崎,最初是為了幫助管理 Linux 內(nèi)核開(kāi)發(fā)而設(shè)計(jì)的版本控制軟件珊搀,這是一款開(kāi)源的軟件。(在這里說(shuō)一下仿畸,開(kāi)源的意思就是開(kāi)放源代碼食棕,用戶可以在遵守項(xiàng)目協(xié)議的基礎(chǔ)上使用和修改源代碼朗和。)版本控制工具可不止 Git,還有 SVN 集中式的版本管理簿晓。但與 SVN 相比眶拉,Git 的優(yōu)勢(shì)是分布式,SVN 是把項(xiàng)目托管到一個(gè)中央服務(wù)器上憔儿,而 Git 則是分布在每個(gè)使用者的電腦上的忆植,每個(gè)使用者都有項(xiàng)目的所有信息。使用 Git 可以在本地操作 GitHub 上的項(xiàng)目谒臼,增刪改朝刊,操作完了,在推送到 GitHub 上保存蜈缤。

2 Git 的下載安裝


以 windows 環(huán)境下安裝為例拾氓,Linux 和 Mac 系統(tǒng)請(qǐng)自行查找 Git 安裝資料

  • 2.1 Git 下載

Git的官方下載地址

下載Git1.png
下載Git2.png

如果你的下載速度較慢,也可以選擇去軟件應(yīng)用中心下載底哥,這里也推薦一個(gè)百度軟件下載中心咙鞍,但里面的軟件不一定是最新的,還是建議在官網(wǎng)上下載的趾徽。Git百度軟件中心下載

  • 2.2 Git 安裝

在 windows 下安裝 Git 和安裝普通軟件一樣续滋,你可以更改安裝目錄,其他的可以按照默認(rèn)的安裝選項(xiàng)孵奶,直接點(diǎn)下一步直到安裝完成即可疲酌,安裝完成后鼠標(biāo)的右鍵功能表中會(huì)增加兩個(gè)新的選項(xiàng)。

Git安裝好后.png

3 Git 的初始配置


  • 3.1 查看安裝的 Git 的版本

可以在運(yùn)行窗口中輸入 cmd 進(jìn)入命令提示符窗口了袁,然后輸入 git --version 回車即可顯示所安裝的 git 版本朗恳,也可以進(jìn)入鼠標(biāo)右鍵的 Git Bash Here 選項(xiàng)進(jìn)入 Git 命令行窗口,輸入 git --version 命令來(lái)查看版本信息早像。

  • 3.2 查看 Git 的初始環(huán)境變量

在 Git Bash 窗口中輸入 git config --global -l //分條查看初始配置信息

Git初始配置信息.png
  • 3.3 配置 Git 的工作環(huán)境變量

下面這些環(huán)境變量的設(shè)置決定了 Git 在各個(gè)環(huán)節(jié)具體的工作方式和行為僻肖。比如說(shuō)配置使用 Git 的用戶信息,當(dāng)然不配置也是可以的卢鹦。
在 Git Bash 窗口中輸入 git config --global user.name "wenshixin" //配置用戶名 git config --global user.email "wenshixin23.@163.com" //配置郵箱名臀脏,再次查看Git的配置信息。

Git配置后的環(huán)境信息.png

另外還可以配置差異檢測(cè)工具和 Git 默認(rèn)的文本編輯器冀自,一般 Git 默認(rèn)的是 Vi 或者 Vim 編輯器揉稚,這個(gè)配置不常用,這里就不多演示熬粗,還有一個(gè)地方是 Git 命令行窗口輸入的配置搀玖,一個(gè)是輸入光標(biāo)的設(shè)置,一個(gè)是在 Git 里中文顯示不正常的設(shè)置驻呐,鼠標(biāo)右鍵點(diǎn)擊窗體標(biāo)題欄灌诅。

Git的其他配置.gif

中文亂碼配置問(wèn)題
如下圖所示芳来,在 Git 里中文是用八進(jìn)制編碼來(lái)顯示的。

Git中文亂碼.png

通過(guò)在 Git 命令行中輸入 git config --global core.quotepath false 猜拾,來(lái)修改 Git 的默認(rèn)文件編碼即舌,使中文文件名正常顯示,下圖為修改過(guò)的中文顯示挎袜。

修正Git中文編碼問(wèn)題.png

4 Git 工作流程


Git工作流程.png
  • 4.1 三個(gè)區(qū)域

工作區(qū)顽聂,暫存區(qū),本地版本庫(kù)盯仪。

工作區(qū)(workspace):就是你實(shí)際寫(xiě)項(xiàng)目的地方紊搪,比如可見(jiàn)的文件夾以及文件

暫存區(qū)(stage/index):工作區(qū)和本地版本庫(kù)之間的區(qū)域,暫存區(qū)承擔(dān)著工作區(qū)和版本庫(kù)之間的“通信”任務(wù)全景,這樣的設(shè)計(jì)為版本控制帶來(lái)更大的靈活性耀石,工作區(qū)的內(nèi)容先放到暫存區(qū),暫存區(qū)會(huì)生成索引蚪燕,或者稱為是目錄樹(shù)來(lái)記錄工作區(qū)的修改娶牌。由工作區(qū)到暫存區(qū)只是把工作區(qū)的內(nèi)容做了“跟蹤監(jiān)視”奔浅,并沒(méi)有為其建立版本控制的內(nèi)容馆纳。

本地版本庫(kù)(local repository):暫存區(qū)的內(nèi)容提交到本地的版本庫(kù)中,版本庫(kù)有一個(gè) ./git 的隱藏文件夾來(lái)管理這個(gè)項(xiàng)目的每次提交汹桦,至此鲁驶,你的項(xiàng)目才是真正的被“管理”起來(lái)了,而不只是之前的“監(jiān)控”了舞骆。
關(guān)于 Git 的各種命令钥弯,在《親吻GitHub》中會(huì)詳細(xì)說(shuō)到。

  • 4.2 四種狀態(tài)

未跟蹤狀態(tài)(untracked):文件還只放在工作區(qū)督禽,還沒(méi)有放到暫存區(qū)進(jìn)行跟蹤和監(jiān)視脆霎。
未修改狀態(tài)(unmodified):沒(méi)有進(jìn)行編輯的空白文件
修改狀態(tài)(modified):對(duì)空白文件進(jìn)行了編輯
暫存狀態(tài)(staged):文件到暫存區(qū)的后即為暫存狀態(tài)

  • 4.3 Git 的各個(gè)區(qū)之間的工作流程

這三個(gè)區(qū)域構(gòu)成一個(gè)循環(huán)的工作流程,工作區(qū)(workspace)的內(nèi)容添加(add)到暫存區(qū)(stage/index),暫存區(qū)的內(nèi)容再提交到本地版本控制倉(cāng)庫(kù)(local repository)狈惫,工作區(qū)又可以切換(checkout)到版本的某一分支睛蛛。

5 Git 牽手 GitHub

Git結(jié)合GitHub.png

之前說(shuō)到可以在 GitHub 上創(chuàng)建倉(cāng)庫(kù),這個(gè)倉(cāng)庫(kù)我們稱為是遠(yuǎn)程倉(cāng)庫(kù)(remote repository)胧谈,這和我們剛才說(shuō)到的本地倉(cāng)庫(kù)又有什么關(guān)系呢忆肾?從上面的圖中我們可以看到這個(gè)遠(yuǎn)程倉(cāng)庫(kù)有和本地倉(cāng)庫(kù)和工作區(qū)有聯(lián)系。

我們通過(guò)創(chuàng)建本地倉(cāng)庫(kù)對(duì)我們的項(xiàng)目施行了管理控制菱肖,但這個(gè)倉(cāng)庫(kù)畢竟是我們硬盤上的文件客冈,還是會(huì)有被意外刪除和丟失的可能,所以放到遠(yuǎn)程倉(cāng)庫(kù)就很有必要稳强,放在 GitHub 上安全一些场仲,但是有時(shí)候在國(guó)內(nèi)訪問(wèn)會(huì)有些慢和悦。說(shuō)明一點(diǎn),遠(yuǎn)程倉(cāng)庫(kù)也不止 GitHub 一家渠缕,國(guó)內(nèi)也有 碼云摹闽,CSDN,但這些在名氣上都比不上 GitHub褐健,畢竟 GitHub 是全球性的付鹿,這些代碼托管平臺(tái)和 GitHub 在使用上其實(shí)相差不大,學(xué)會(huì) GitHub蚜迅,其他平臺(tái)的使用都是小兒科舵匾,筆者也使用了碼云這個(gè)托管平臺(tái),因?yàn)橛袝r(shí)候 GitHub 真的挺慢谁不。另外遠(yuǎn)程倉(cāng)庫(kù)也提高了我們項(xiàng)目的可攜帶性坐梯,只要在一個(gè)連上網(wǎng)的環(huán)境,我們就可以從遠(yuǎn)程倉(cāng)庫(kù)拷貝到本地計(jì)算機(jī)硬盤上刹帕,這樣也便于分享自己的開(kāi)源項(xiàng)目吵血,團(tuán)隊(duì)合作會(huì)在《相守GitHub》中說(shuō)到的。

知道了這些偷溺,我們?cè)賮?lái)說(shuō)說(shuō) Git 和 GitHub 是如何“牽手”的蹋辅。本地倉(cāng)庫(kù)中的內(nèi)容可以推(push)到遠(yuǎn)程倉(cāng)庫(kù),當(dāng)然這里需要先而讓本地倉(cāng)庫(kù)和遠(yuǎn)程倉(cāng)庫(kù)建立聯(lián)系挫掏,具體的操作侦另,在《親吻GitHub》中會(huì)說(shuō)。在本地你可以把遠(yuǎn)程倉(cāng)庫(kù)的內(nèi)容直接拉(pull)到本地工作區(qū)尉共,或者是獲劝怠(fetch)和克隆(clone)遠(yuǎn)程倉(cāng)庫(kù)中的內(nèi)容到本地倉(cāng)庫(kù)中袄友,這兩種方式的區(qū)別殿托,在《相守GitHub》中會(huì)說(shuō)。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末剧蚣,一起剝皮案震驚了整個(gè)濱河市支竹,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌券敌,老刑警劉巖唾戚,帶你破解...
    沈念sama閱讀 206,214評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異待诅,居然都是意外死亡叹坦,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,307評(píng)論 2 382
  • 文/潘曉璐 我一進(jìn)店門卑雁,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)募书,“玉大人绪囱,你說(shuō)我怎么就攤上這事∮瘢” “怎么了鬼吵?”我有些...
    開(kāi)封第一講書(shū)人閱讀 152,543評(píng)論 0 341
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)篮赢。 經(jīng)常有香客問(wèn)我齿椅,道長(zhǎng),這世上最難降的妖魔是什么启泣? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 55,221評(píng)論 1 279
  • 正文 為了忘掉前任涣脚,我火速辦了婚禮,結(jié)果婚禮上寥茫,老公的妹妹穿的比我還像新娘遣蚀。我一直安慰自己,他們只是感情好纱耻,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,224評(píng)論 5 371
  • 文/花漫 我一把揭開(kāi)白布芭梯。 她就那樣靜靜地躺著,像睡著了一般弄喘。 火紅的嫁衣襯著肌膚如雪玖喘。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 49,007評(píng)論 1 284
  • 那天限次,我揣著相機(jī)與錄音芒涡,去河邊找鬼。 笑死卖漫,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的赠群。 我是一名探鬼主播羊始,決...
    沈念sama閱讀 38,313評(píng)論 3 399
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼查描!你這毒婦竟也來(lái)了突委?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 36,956評(píng)論 0 259
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤冬三,失蹤者是張志新(化名)和其女友劉穎匀油,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體勾笆,經(jīng)...
    沈念sama閱讀 43,441評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡敌蚜,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,925評(píng)論 2 323
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了窝爪。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片弛车。...
    茶點(diǎn)故事閱讀 38,018評(píng)論 1 333
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡齐媒,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出纷跛,到底是詐尸還是另有隱情喻括,我是刑警寧澤,帶...
    沈念sama閱讀 33,685評(píng)論 4 322
  • 正文 年R本政府宣布贫奠,位于F島的核電站唬血,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏唤崭。R本人自食惡果不足惜刁品,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,234評(píng)論 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望浩姥。 院中可真熱鬧挑随,春花似錦、人聲如沸勒叠。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 30,240評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)眯分。三九已至拌汇,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間弊决,已是汗流浹背噪舀。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 31,464評(píng)論 1 261
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留飘诗,地道東北人与倡。 一個(gè)月前我還...
    沈念sama閱讀 45,467評(píng)論 2 352
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像昆稿,于是被迫代替她去往敵國(guó)和親纺座。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,762評(píng)論 2 345

推薦閱讀更多精彩內(nèi)容

  • 1. 安裝 Github 查看是否安裝git: $ git config --global user.name "...
    Albert_Sun閱讀 13,631評(píng)論 9 163
  • 放不下的溫柔 拿不起的守候 就當(dāng)做我從未給過(guò)你 想要的挽留 從此別無(wú)他求 只愿你日后 與她白頭
    繭子?jì)?/span>閱讀 165評(píng)論 0 0
  • 日月兩盞燈溉潭,春秋一場(chǎng)夢(mèng)净响。在陽(yáng)光下,回憶悠長(zhǎng)喳瓣。 花蕊落在臺(tái)階馋贤,疊成季節(jié)的思想,多情的行客背起行囊畏陕,去尋找記憶深處的地...
    雲(yún)水禪心211閱讀 481評(píng)論 0 1
  • 01 我的朋友君君,時(shí)常向我們哭訴她被領(lǐng)導(dǎo)呵斥的事扰付,時(shí)而委屈時(shí)而憤怒堤撵,動(dòng)不動(dòng)就辭職。作為朋友的我們羽莺,一開(kāi)始還會(huì)安慰...
    木一貝閱讀 1,275評(píng)論 9 25
  • 最近迷上了女子的背影实昨,那柔軟的發(fā)絲,魂?duì)繅?mèng)繞把喂獭荒给! 哈哈,言歸正傳刁卜,咱們還是來(lái)畫(huà)畫(huà)吧志电。 工具:鉛...
    安簡(jiǎn)子_閱讀 535評(píng)論 0 4