github入門到上傳本地項(xiàng)目

GitHub是基于git實(shí)現(xiàn)的代碼托管。git是目前最好用的版本控制系統(tǒng)了阱扬,非常受歡迎,比之svn更好吉嫩。

GitHub可以免費(fèi)使用价认,并且快速穩(wěn)定。即使是付費(fèi)帳戶自娩,每個(gè)月不超過10美刀的費(fèi)用也非常便宜用踩。

利用GitHub,你可以將項(xiàng)目存檔忙迁,與其他人分享交流脐彩,并讓其他開發(fā)者幫助你一起完成這個(gè)項(xiàng)目。優(yōu)點(diǎn)在于姊扔,他支持多人共同完成一個(gè)項(xiàng)目惠奸,因此你們可以在同一頁面對話交流。

創(chuàng)建自己的項(xiàng)目恰梢,并備份佛南,代碼不需要保存在本地或者服務(wù)器梗掰,GitHub做得非常理想。

學(xué)習(xí)Git也有很多好處嗅回。他被視為一個(gè)預(yù)先維護(hù)過程及穗,你可以按自己的需要恢復(fù)、提交出現(xiàn)問題,或者您需要恢復(fù)任何形式的代碼绵载,可以避免很多麻煩埂陆。Git最好的特性之一是能夠跟蹤錯(cuò)誤,這讓使用Github變得更加簡單娃豹。Bugs可以公開焚虱,你可以通過Github評論,提交錯(cuò)誤懂版。

在GitHub頁面鹃栽,你可以直接開始,而不需要設(shè)置主機(jī)或者DNS躯畴。

對于我來說谍咆,我可以在公司和家編輯同樣的一套代碼了,用U盤或者網(wǎng)盤都好麻煩的說

理論說太多容易忘私股,來實(shí)踐實(shí)踐吧。

大綱:

一恩掷、創(chuàng)建github?repository(倉庫)

二倡鲸、安裝git客戶端

三、為Github賬戶設(shè)置SSH key

四黄娘、上傳本地項(xiàng)目到github

一峭状、創(chuàng)建github?repository(倉庫)

1-1 登錄github

github的官方網(wǎng)址:https://github.com ,如果沒有賬號(hào)逼争,趕緊注冊一個(gè)优床。

點(diǎn)擊Sign in進(jìn)入登錄界面,輸入賬號(hào)和密碼登入github誓焦。

1-2 創(chuàng)建repository(倉庫)

為啥要叫repository(倉庫)胆敞?我起初也納悶,叫代碼庫不更簡單明了么杂伟? 但仔細(xì)一琢磨移层,倉庫一般都是放糧食的吧,這是把代碼當(dāng)作飽腹之物赫粥,多有愛观话,瞬間覺得這冰冷冷的代碼充滿了查克拉。

扯遠(yuǎn)了越平,來看怎么創(chuàng)建倉庫频蛔,登錄后可以看到有repository選項(xiàng)卡

如果沒在這個(gè)頁面也沒關(guān)系灵迫,點(diǎn)擊右上角的頭像旁邊的小三角,展開后可以看到Y(jié)our profile晦溪,點(diǎn)擊進(jìn)入后也能看到repository

切換到repository選項(xiàng)卡瀑粥,可以看到很醒目的new按鈕。不用猶豫尼变,點(diǎn)擊它利凑,開始創(chuàng)建自己的糧倉了。

下面是創(chuàng)建倉庫信息嫌术,只有名字是必填項(xiàng)哀澈,現(xiàn)在我創(chuàng)建了一個(gè)倉庫叫:beautifulDay

創(chuàng)建成功后,可以看到自己的倉庫地址度气,如此割按,我的遠(yuǎn)程免費(fèi)的倉庫就創(chuàng)建了。它還介紹了github倉庫的常用指令磷籍。這個(gè)指令需要在本地安裝git客戶端适荣。

git init//把這個(gè)目錄變成Git可以管理的倉庫

git add README.md//文件添加到倉庫

git add .//不但可以跟單一文件,還可以跟通配符院领,更可以跟目錄弛矛。一個(gè)點(diǎn)就把當(dāng)前目錄下所有未追蹤的文件全部add了

git commit -m "first commit"http://把文件提交到倉庫

git remote add origin?git@github.com:wangjiax9/practice.git//關(guān)聯(lián)遠(yuǎn)程倉庫

git push -u origin master//把本地庫的所有內(nèi)容推送到遠(yuǎn)程庫上

二、安裝git客戶端

Git是目前世界上最先進(jìn)的分布式版本控制系統(tǒng)比然,git與svn的五個(gè)基本區(qū)別丈氓。它有以下特點(diǎn):

分布式 : Git版本控制系統(tǒng)是一個(gè)分布式的系統(tǒng), 是用來保存工程源代碼歷史狀態(tài)的命令行工具;

保存點(diǎn) : Git的保存點(diǎn)可以追蹤源碼中的文件, 并能得到某一個(gè)時(shí)間點(diǎn)上的整個(gè)工程項(xiàng)目額狀態(tài); 可以在該保存點(diǎn)將多人提交的源碼合并, 也可以會(huì)退到某一個(gè)保存點(diǎn)上;

Git離線操作性 :Git可以離線進(jìn)行代碼提交, 因此它稱得上是完全的分布式處理, Git所有的操作不需要在線進(jìn)行; 這意味著Git的速度要比SVN等工具快得多, 因?yàn)镾VN等工具需要在線時(shí)才能操作, 如果網(wǎng)絡(luò)環(huán)境不好, 提交代碼會(huì)變得非常緩慢;

Git基于快照 : SVN等老式版本控制工具是將提交點(diǎn)保存成補(bǔ)丁文件, Git提交是將提交點(diǎn)指向提交時(shí)的項(xiàng)目快照, 提交的東西包含一些元數(shù)據(jù)(作者, 日期, GPG等);

Git的分支和合并 : 分支模型是Git最顯著的特點(diǎn), 因?yàn)檫@改變了開發(fā)者的開發(fā)模式, SVN等版本控制工具將每個(gè)分支都要放在不同的目錄中, Git可以在同一個(gè)目錄中切換不同的分支;

分支即時(shí)性 : 創(chuàng)建和切換分支幾乎是同時(shí)進(jìn)行的, 用戶可以上傳一部分分支, 另外一部分分支可以隱藏在本地, 不必將所有的分支都上傳到GitHub中去;

分支靈活性 : 用戶可以隨時(shí) 創(chuàng)建 合并 刪除分支, 多人實(shí)現(xiàn)不同的功能, 可以創(chuàng)建多個(gè)分支進(jìn)行開發(fā), 之后進(jìn)行分支合并, 這種方式使開發(fā)變得快速, 簡單, 安全强法。

2-1 下載git客戶端

官方下載地址:http://git-scm.com/download/ ?根據(jù)你自己的系統(tǒng) 下載對應(yīng)版本万俗,沒想到它知道我是Windows ^_^

2-2 安裝客戶端

下載好之后咋們開始安裝吧,歡迎界面饮怯,下一步闰歪。

選擇安裝路徑,千萬別選帶中文的路徑蓖墅,有時(shí)候會(huì)引起不必要的誤會(huì)库倘。

選擇安裝組件,按默認(rèn)的來就好了置媳。

1)圖標(biāo)組件(Addition icons) : 選擇是否創(chuàng)建快速啟動(dòng)欄圖標(biāo) 或者 是否創(chuàng)建桌面快捷方式;

2)桌面瀏覽(Windows Explorer integration) : 瀏覽源碼的方法, 單獨(dú)的上下文瀏覽 只使用bash 或者 只用Git GUI工具; 高級(jí)的上下文瀏覽方法 使用git-cheetah plugin插件;

3)關(guān)聯(lián)配置文件(Associate .git*) : 是否關(guān)聯(lián)git配置文件, 該配置文件主要顯示文本編輯器的樣式;

4)關(guān)聯(lián)shell腳本文件(Associate .sh) : 是否關(guān)聯(lián)Bash命令行執(zhí)行的腳本文件;

5)使用TrueType編碼 : 在命令行中是否使用TruthType編碼, 該編碼是微軟和蘋果公司制定的通用編碼;

設(shè)置開始菜單中快捷方式的目錄名稱于樟,默認(rèn)就好,下一步吧

設(shè)置環(huán)境變量 : 選擇使用什么樣的命令行工具, 一般情況下我們默認(rèn)使用Git Bash即可, 默認(rèn)選擇;

1)Git自帶 : 使用Git自帶的Git Bash命令行工具;

2)系統(tǒng)自帶CMD : 使用Windows系統(tǒng)的命令行工具;

3) 二者都有 : 上面二者同時(shí)配置, 但是注意, 這樣會(huì)將windows中的find.exe 和 sort.exe工具覆蓋, 如果不懂這些盡量不要選擇;

選擇換行格式 拇囊,依然是默認(rèn)就好迂曲。

1)檢查出windows格式轉(zhuǎn)換為unix格式 : 將windows格式的換行轉(zhuǎn)為unix格式的換行在進(jìn)行提交;

2)檢查出原來格式轉(zhuǎn)為unix格式 : 不管什么格式的, 一律轉(zhuǎn)為unix格式的換行在進(jìn)行提交;

3)不進(jìn)行格式轉(zhuǎn)換 : 不進(jìn)行轉(zhuǎn)換, 檢查出什么, 就提交什么;

選擇終端模擬器,依然默認(rèn)就好

1)使用MinTTY寥袭,就是在Windows開了一個(gè)簡單模擬Linux命令環(huán)境的窗口Git Bash

2)使用windows的系統(tǒng)的命令行程序cmd.exe

選擇默認(rèn)就好路捧,不用文件系統(tǒng)緩存

安裝中……

git終于安裝成功咯关霸。

2-3 綁定用戶

打開git-bash.exe,在桌面快捷方式/開始菜單/安裝目錄中

因?yàn)镚it是分布式版本控制系統(tǒng)杰扫,所以需要填寫用戶名和郵箱作為一個(gè)標(biāo)識(shí)队寇,用戶和郵箱為你github注冊的賬號(hào)和郵箱

psgit config? –global 參數(shù),有了這個(gè)參數(shù)章姓,表示你這臺(tái)機(jī)器上所有的Git倉庫都會(huì)使用這個(gè)配置仇冯,當(dāng)然你也可以對某個(gè)倉庫指定的不同的用戶名和郵箱姥份。

三浸剩、為Github賬戶設(shè)置SSH key

眾所周知ssh key是加密傳輸擦盾。

加密傳輸?shù)乃惴ㄓ泻枚啵琯it使用rsa系忙,rsa要解決的一個(gè)核心問題是诵盼,如何使用一對特定的數(shù)字,使其中一個(gè)數(shù)字可以用來加密银还,而另外一個(gè)數(shù)字可以用來解密风宁。這兩個(gè)數(shù)字就是你在使用git和github的時(shí)候所遇到的public key也就是公鑰以及private key私鑰。

其中蛹疯,公鑰就是那個(gè)用來加密的數(shù)字戒财,這也就是為什么你在本機(jī)生成了公鑰之后,要上傳到github的原因捺弦。從github發(fā)回來的固翰,用那公鑰加密過的數(shù)據(jù),可以用你本地的私鑰來還原羹呵。

如果你的key丟失了,不管是公鑰還是私鑰疗琉,丟失一個(gè)都不能用了冈欢,解決方法也很簡單,重新再生成一次盈简,然后在github.com里再設(shè)置一次就行

3-1 生成ssh key

首先檢查是否已生成密鑰?cd ~/.ssh凑耻,ls如果有3個(gè)文件,則密鑰已經(jīng)生成柠贤,id_rsa.pub就是公鑰

也可以打開我的電腦C:\Users\specter\.ssh 里面找到

如果沒有生成香浩,那么通過$ ssh-keygen -t rsa -C “6215048wjl@163.com”來生成。

1)是路徑確認(rèn)臼勉,直接按回車存默認(rèn)路徑即可

2)直接回車鍵邻吭,這里我們不使用密碼進(jìn)行登錄, 用密碼太麻煩;

3)直接回車鍵

生成成功后,去對應(yīng)目錄C:\Users\specter\.ssh里(specter為電腦用戶名宴霸,每個(gè)人不同)用記事本打開id_rsa.pub囱晴,得到ssh key公鑰

3-2 為github賬號(hào)配置ssh key

切換到github膏蚓,展開個(gè)人頭像的小三角,點(diǎn)擊settings

然后打開SSH keys菜單畸写, 點(diǎn)擊Add SSH key新增密鑰驮瞧,填上標(biāo)題,跟倉庫保持一致吧枯芬,好區(qū)分论笔。

接著將id_rsa.pub文件中key粘貼到此,最后Add key生成密鑰吧千所。

如此狂魔,github賬號(hào)的SSH keys配置完成。

四真慢、上傳本地項(xiàng)目到github

4-1 創(chuàng)建一個(gè)本地項(xiàng)目

我這創(chuàng)建了幾個(gè)空文件夾和一個(gè)文件及一個(gè)項(xiàng)目配置文件毅臊,好多前端項(xiàng)目都這樣搭架構(gòu),我也追隨潮流哈黑界。

4-2 建立本地倉庫

再來復(fù)習(xí)一下創(chuàng)建新倉庫的指令:

git init?//把這個(gè)目錄變成Git可以管理的倉庫

git add README.md?//文件添加到倉庫

git add .?//不但可以跟單一文件管嬉,還可以跟通配符,更可以跟目錄朗鸠。一個(gè)點(diǎn)就把當(dāng)前目錄下所有未追蹤的文件全部add了

git commit -m "first commit"?//把文件提交到倉庫

git remote add origin?git@github.com:wangjiax9/practice.git?//關(guān)聯(lián)遠(yuǎn)程倉庫

git push -u origin master?//把本地庫的所有內(nèi)容推送到遠(yuǎn)程庫上

首先蚯撩,進(jìn)入到beautifulDay項(xiàng)目目錄,還記得創(chuàng)建倉庫成功后的那個(gè)頁面吧烛占,指令都在呢胎挎。

然后執(zhí)行指令:git init

初始化成功后你會(huì)發(fā)現(xiàn)項(xiàng)目里多了一個(gè)隱藏文件夾.git

這個(gè)目錄是Git用來跟蹤管理版本庫的,沒事千萬不要手動(dòng)修改這個(gè)目錄里面的文件忆家,不然改亂了犹菇,就把Git倉庫給破壞了。

接著芽卿,將所有文件添加到倉庫

執(zhí)行指令:git add .

然后揭芍,把文件提交到倉庫,雙引號(hào)內(nèi)是提交注釋卸例。

執(zhí)行指令:git commit -m "提交文件"

如此本地倉庫建立好了称杨。

4-3?關(guān)聯(lián)github倉庫

到github beautifulDay倉庫復(fù)制倉庫地址

然后執(zhí)行指令:git remote add origin git@github.com:wangjiax9/beautifulDay.git

4-4 上傳本地代碼

執(zhí)行指令:git push -u origin master

1)敲一個(gè):yes, 然后回車

到此筷转,本地代碼已經(jīng)推送到github倉庫了姑原,我們現(xiàn)在去githubt倉庫看看。

咦呜舒!奇怪了锭汛,我的目錄呢?這個(gè)坑突然冒出來是不是印象很深刻呢~

注意咯:git是不能管理空的文件夾的,文件夾里必須有文件才能add

好店乐,我們來試一下艰躺,我在examples里新建了一個(gè)test1.html文件

執(zhí)行指令添加文件->提交文件->推送文件

git add .

git commit -m "提交test1.html"

git push -u origin master

然后刷新一個(gè)github,你會(huì)看到眨八,examples文件夾出來了腺兴。

打開examples文件夾,test1.html也在里面廉侧。

總結(jié):

現(xiàn)在通過博客來將github入門梳理了一遍页响,印象好深刻,應(yīng)該不會(huì)變成零碎了段誊。如果大家想要知道更多的git操作和知識(shí)闰蚕,推薦去看看繆雪峰的git教程,講得很詳細(xì)连舍。

祝大家猴年長得猴美猴美的没陡,掙得猴多猴多的,心情猴好猴好的索赏,運(yùn)氣猴順猴順的盼玄,睡覺猴香猴香的,愛情猴甜猴甜的潜腻,總之埃儿,一切都猴蜜猴蜜的!

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市融涣,隨后出現(xiàn)的幾起案子童番,更是在濱河造成了極大的恐慌,老刑警劉巖威鹿,帶你破解...
    沈念sama閱讀 206,482評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件剃斧,死亡現(xiàn)場離奇詭異,居然都是意外死亡忽你,警方通過查閱死者的電腦和手機(jī)悯衬,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,377評論 2 382
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來檀夹,“玉大人,你說我怎么就攤上這事策橘≌ǘ桑” “怎么了?”我有些...
    開封第一講書人閱讀 152,762評論 0 342
  • 文/不壞的土叔 我叫張陵丽已,是天一觀的道長蚌堵。 經(jīng)常有香客問我,道長,這世上最難降的妖魔是什么吼畏? 我笑而不...
    開封第一講書人閱讀 55,273評論 1 279
  • 正文 為了忘掉前任督赤,我火速辦了婚禮,結(jié)果婚禮上泻蚊,老公的妹妹穿的比我還像新娘躲舌。我一直安慰自己,他們只是感情好性雄,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,289評論 5 373
  • 文/花漫 我一把揭開白布没卸。 她就那樣靜靜地躺著,像睡著了一般秒旋。 火紅的嫁衣襯著肌膚如雪约计。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,046評論 1 285
  • 那天迁筛,我揣著相機(jī)與錄音煤蚌,去河邊找鬼。 笑死细卧,一個(gè)胖子當(dāng)著我的面吹牛尉桩,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播酒甸,決...
    沈念sama閱讀 38,351評論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼魄健,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了插勤?” 一聲冷哼從身側(cè)響起沽瘦,我...
    開封第一講書人閱讀 36,988評論 0 259
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎农尖,沒想到半個(gè)月后析恋,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 43,476評論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡盛卡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,948評論 2 324
  • 正文 我和宋清朗相戀三年助隧,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片滑沧。...
    茶點(diǎn)故事閱讀 38,064評論 1 333
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡并村,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出滓技,到底是詐尸還是另有隱情哩牍,我是刑警寧澤,帶...
    沈念sama閱讀 33,712評論 4 323
  • 正文 年R本政府宣布令漂,位于F島的核電站膝昆,受9級(jí)特大地震影響丸边,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜荚孵,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,261評論 3 307
  • 文/蒙蒙 一妹窖、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧收叶,春花似錦骄呼、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,264評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至哆致,卻和暖如春绕德,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背摊阀。 一陣腳步聲響...
    開封第一講書人閱讀 31,486評論 1 262
  • 我被黑心中介騙來泰國打工耻蛇, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人胞此。 一個(gè)月前我還...
    沈念sama閱讀 45,511評論 2 354
  • 正文 我出身青樓臣咖,卻偏偏與公主長得像,于是被迫代替她去往敵國和親漱牵。 傳聞我的和親對象是個(gè)殘疾皇子夺蛇,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,802評論 2 345

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