大家好膏萧,我是IT修真院北京分院第23期的學員郭婷婷冒窍,一枚正直純潔善良的WEB前端程序員懒叛。
今天給大家分享一下烦租,修真院官網CSS任務2如何使用GIT將代碼上傳至GITHUP延赌。
小課堂【北京第170期】
分享人:郭婷婷
1.背景介紹
? ? ? ?Git是一個開源的分布式版本控制系統(tǒng)除盏。
? ? ? ?通俗的說,就是一個管理代碼歷史記錄的工具,當多人協(xié)作時可以相互推送各自的修改挫以。
? ? ? ?GitHub 是一個面向開源及私有軟件項目的托管平臺者蠕,因為只支持 Git 作為唯一的版本庫格式進行托管,故名 GitHub掐松。 付費用戶可以建私人倉庫踱侣,我們一般的免費用戶只能使用公共倉庫,也就是代碼要公開大磺。
2.知識剖析
? ? ? ?版本庫又名倉庫抡句,英文名repository,你可以簡單理解成一個目錄杠愧, 這個目錄里面的所有文件都可以被Git管理起來待榔,每個文件的修改、刪除流济,Git都能跟蹤锐锣, 以便任何時刻都可以追蹤歷史,或者在將來某個時刻可以“還原”绳瘟。
工作區(qū):就是在電腦里能看到的目錄雕憔。
暫存區(qū):英文叫stage, 或index。一般存放在 ".git目錄下" 下的index文件(.git/index)中稽荧,所以我們把暫存區(qū)有時也叫作索引(index)橘茉。
版本庫:工作區(qū)有一個隱藏目錄.git,這個不算工作區(qū)姨丈,而是Git的版本庫畅卓。
3.常見問題
如何添加遠程庫?
如何從遠程庫克麦瘛翁潘?
4. 解決方案
? ? ? 4.1添加遠程庫
(1)創(chuàng)建SSH Key。在用戶主目錄下歼争,看看有沒有.ssh目錄拜马,如果有,再看看這個目錄下有沒有id_rsa和id_rsa.pub這兩個文件沐绒, 如果有的話俩莽,直接跳過此如下命令,如果沒有的話乔遮,打開命令行扮超,輸入如下命令(在github上注冊的郵箱):
按3個回車,密碼為空,最后得到了兩個文件:id_rsa和id_rsa.pub出刷。
進入github官網璧疗,登陸個人賬戶后,settings--SSH and GPG keys--New SSH key,填上任意title馁龟, 在Key文本框里黏貼id_rsa.pub文件的內容崩侠。最后點擊 Add SSH Key。
現在在github上創(chuàng)建新的倉庫坷檩,獲取倉庫地址却音,然后:
添加后,遠程庫的名字就是origin矢炼。
下一步僧家,就可以把本地庫的所有內容推送到遠程庫上:
由于遠程庫是空的,我們第一次推送master分支時裸删,加上了 –u參數,Git不但會把本地的master分支內容推送的遠程新的master分支阵赠, 還會把本地的master分支和遠程的master分支關聯起來涯塔, 在以后的推送或者拉取時就可以簡化命令。
? ? ? ?4.2 從遠程庫克隆
5.擴展思考
如何使用WebStorm管理github上的倉庫
6.參考文獻
參考1:Git教程
參考2:Git是什么
參考3:Git教程
參考4:手把手教你使用Git
7. 更多討論
問:git和svn的區(qū)別清蚀?
答:1.SVN屬于集中化的版本控制系統(tǒng)匕荸,SVN使用起來有點像是檔案倉庫的感覺,支持并行讀寫文件枷邪,支持代碼的版本化管理榛搔,功能包括取出、導入东揣、更新践惑、分支、改名嘶卧、還原尔觉、合并等。Git是一個分布式版本控制系統(tǒng)芥吟,操作命令包括:clone侦铜,pull,push,branch ,merge ,rebase钟鸵,Git擅長的是程序代碼的版本化管理钉稍。
2.GIT跟SVN一樣有自己的集中式版本庫或服務器。但棺耍,GIT更傾向于被使用于分布式模式贡未,也就是每個開發(fā)人員從中心版本庫/服務器上check out代碼后會在自己的機器上克隆一個自己的版本庫。可以這樣說羞秤,如果你被困在一個不能連接網絡的地方時缸托,你仍然能夠提交文件,查看歷史版本記錄瘾蛋,創(chuàng)建項目分支俐镐,對一些人來說,這好像沒多大用處哺哼,但當你突然遇到沒有網絡的環(huán)境時佩抹,這個將解決你的大麻煩。
3.GIT把內容按元數據方式存儲取董,而SVN是按文件所有的資源控制系統(tǒng)都是把文件的元信息隱藏在一個類似.svn,.cvs等的文件夾里棍苹。
4.分支在SVN中一點不特別,就是版本庫中的另外的一個目錄茵汰。如果你想知道是否合并了一個分支枢里,你需要手工運行像這樣的命令svn propget svn:mergeinfo,來確認代碼是否被合并蹂午。然而栏豺,處理GIT的分支卻是相當的簡單和有趣。你可以從同一個工作目錄下快速的在幾個分支間切換豆胸。你很容易發(fā)現未被合并的分支奥洼,你能簡單而快捷的合并這些文件。
5.GIT沒有一個全局的版本號晚胡,而SVN有目前為止這是跟SVN相比GIT缺少的最大的一個特征灵奖。你也知道,SVN的版本號實際是任何一個相應時間的源代碼快照估盘。我認為它是從CVS進化到SVN的最大的一個突破瓷患。
6.GIT的內容完整性要優(yōu)于SVN:GIT的內容存儲使用的是SHA-1哈希算法。這能確保代碼內容的完整性遣妥,確保在遇到磁盤故障和網絡問題時降低對版本庫的破壞尉尾。
問:如何版本回退
答:HEAD指向的版本就是當前版本,因此燥透,Git允許我們在版本的歷史之間穿梭沙咏,使用命令git reset --hard commit_id。穿梭前班套,用git log可以查看提交歷史肢藐,以便確定要回退到哪個版本。要重返未來吱韭,用git reflog查看命令歷史吆豹,以便確定要回到未來的哪個版本鱼的。
問:如何用git命令查看當前文件夾文件
答:輸入“l(fā)s”
鳴謝
感謝大家觀看
BY :? 郭婷婷
ppt鏈接:https://ptteng.github.io/PPT/PPT/css-02-How%20to%20upload%20your%20code%20to%20github%20by%20git.html#/
-----------------------------------------------------------------------------------------------------------------------
技能樹.IT修真院
“我們相信人人都可以成為一個工程師,現在開始痘煤,找個師兄凑阶,帶你入門,掌控自己學習的節(jié)奏衷快,學習的路上不再迷弥娉鳎”。
這里是技能樹.IT修真院蘸拔,成千上萬的師兄在這里找到了自己的學習路線师郑,學習透明化,成長可見化调窍,師兄1對1免費指導宝冕。快來與我一起學習吧?邓萨!