Git是什么奠滑?
Git 是用于 Linux內(nèi)核開發(fā)的版本控制工具。版本控制工具就是用于記錄開發(fā)過程的每個(gè)版本
GitHub是什么鲤脏?
它是一個(gè)面向開源及私有軟件項(xiàng)目的托管平臺(tái)爽茴,因?yàn)橹恢С謌it 作為唯一的版本庫(kù)格式進(jìn)行托管,所以叫GitHub兢榨。
我們可以從使用GitHub的方式去了解如何使用Git嗅榕。
- 先去GitHub注冊(cè)一個(gè)賬號(hào)
- 注冊(cè)后進(jìn)入這個(gè)頁(yè)面顺饮,我們來新建一個(gè)倉(cāng)庫(kù)
- 點(diǎn)擊后,輸入庫(kù)名凌那,設(shè)置為公有(私有收費(fèi))兼雄,勾選一下初始化生成一個(gè)READMA文件(自愿,勾不勾都可以,初次使用最好勾選)
- 創(chuàng)建庫(kù)后帽蝶,在頁(yè)面中尋找clone or download赦肋,點(diǎn)擊后使用Use SSH,復(fù)制它提供的鏈接
- 打開終端励稳,輸入git clone (你復(fù)制的地址)佃乘,回車,它的意思就是你創(chuàng)建的下載提示到你的電腦里
- 當(dāng)你在執(zhí)行這句話的時(shí)候麦锯,第一次操作它會(huì)有個(gè)報(bào)錯(cuò)恕稠,試著閱讀一下,提示你需要設(shè)置一個(gè)公鑰扶欣,這是因?yàn)間ithub需要知道你是否有權(quán)限去下載鹅巍,不可能無論是誰(shuí)都可以下載吧
-
在GitHub頁(yè)面上的右上角有一個(gè)頭像,點(diǎn)擊它料祠,點(diǎn)擊Settings骆捧,找到SSH and GPG keys,去使用一下它的幫助,
點(diǎn)擊后尋找Generating a new SSH key and adding it to the ssh-agent,
復(fù)制這一行代碼髓绽,把它輸入終端后敛苇,一直按回車(注意:改成你的郵箱)
此時(shí)它會(huì)在你的文件夾下生成一個(gè)私鑰id_rsa和一個(gè)公鑰id_rsa.pub,接下來我們需要把id_rsa.pub的內(nèi)容拷貝下來,你可以使用vim編輯器去拷貝也可以輸入cat id_rsa.pub,去用鼠標(biāo)拷貝(注意:要完整的復(fù)制顺呕,不要少)
-
打開GitHub頁(yè)面枫攀,點(diǎn)擊New SSH keys,在title下輸入名稱(什么都行)株茶,在key下粘貼来涨,點(diǎn)擊添加
- 點(diǎn)擊Use SSH,復(fù)制它提供的鏈接启盛, 打開終端蹦掐,輸入git clone (你復(fù)制的地址),進(jìn)行下載僵闯,進(jìn)入你下載的文件夾(文件夾名應(yīng)該就是你新建的庫(kù)名)卧抗,在里面創(chuàng)建一個(gè)文件,添加到緩存區(qū)鳖粟,提交到本地庫(kù)社裆,推送到github遠(yuǎn)程庫(kù),此時(shí)你的github網(wǎng)頁(yè)庫(kù)里會(huì)出現(xiàn)你在終端創(chuàng)建的文件
cd blog /blog是你的文件夾名牺弹,意思是進(jìn)入blog文件夾
touch a.md /創(chuàng)建文件a.md
echo"hello" > a.md /向文件里寫入字符串
git status /可以列出當(dāng)前目錄所有還沒有被git管理的文件和被git管理且被修改但還未提交的文件.
git add . /添加到緩存區(qū)
git commit -am "addfile" /把暫存區(qū)的更新提交到本地庫(kù)浦马,“”中內(nèi)容是描述一下你做了什么
git push origin master /推送到github遠(yuǎn)程庫(kù)
就是通過這樣的過程时呀,你就可以將自己電腦中的項(xiàng)目,通過終端推送到GitHub上
當(dāng)你第一次提交到遠(yuǎn)程庫(kù)時(shí)可能會(huì)出現(xiàn)讓你設(shè)置你的郵箱和密碼晶默,輸入后會(huì)彈出一個(gè)githu的登陸頁(yè)面谨娜,登陸進(jìn)去就可以啦
- 下面是一些基本的操作,可以自己嘗試一下
git pull /使用前最好變動(dòng)更新一下本地庫(kù)
如果想要在本地新建一個(gè)項(xiàng)目然后推送到遠(yuǎn)程github上
mkdir blogtest /創(chuàng)建一個(gè)空的blogtest文件夾
touch blogtest.md /添加一個(gè)文件
git init /用它來初始化磺陡,把空文件夾變成倉(cāng)庫(kù)
git remote -v /查看本地倉(cāng)庫(kù)里記錄的遠(yuǎn)程倉(cāng)庫(kù)地址
git remote add origin 地址
git push origin master
分支操作
git branch -a /查看分支
git branch dev /創(chuàng)建本地庫(kù)dev分支
git checkout dev /切換到dev分支
git push origin dev /推送到origin地址的dev分支上
git checkout master /切換到master
git merge dev /把dev分支上的內(nèi)容合并到當(dāng)前主干(master)上
- 沖突
當(dāng)自己和別人改同一個(gè)文件的同一個(gè)地方趴梢,在執(zhí)行g(shù)it pull時(shí)更新本地合并時(shí)會(huì)出現(xiàn)沖突
1.修復(fù)沖突文件
2.重新提交