原文鏈接:
https://blog.csdn.net/weixin_42083008/article/details/109574502
前言
github是一個面向開源及私有軟件項目的托管平臺,什么叫面向開源呢?說白了就是把代碼共享,微軟以前并不秉持著開源的態度,企圖以windows占有率坐擁江山,可惜開源共享的大勢誰都不能阻擋,哪怕是微軟帝國。這不,斥資把這個國際知名代碼托管平臺github給收購了。
那有的同學會說,它有什么用啊,我也不需要把我的代碼托管給保管呀。github除了叫代碼托管平臺,還有一個名字叫版本控制系統(類似的版本控制系統還有TFS、SVN等)。所謂版本控制,就是說一個成品東西有多個版本,比如寫小說時,寫到某一章,會有多高,在你發布之前這些稿都可能用到。而代碼也是一樣,在項目開發過程中,項目代碼會有多個歷史版本,開發人員可以回到任意版本(過去的節點)。比如開發人員小明,今天下班前提交了一下代碼,第二天電腦硬盤被燒,數據全部丟失,那他就可以去服務器上找到歷史最近提交的一次版本,并將代碼拷貝下來。
本地代碼備份到github倉庫
好了,前面說的,假如公司項目代碼就放在一臺電腦上,哪天這臺電腦嗝屁了,那就gg了。當然你可以把它再拷貝幾份到其他電腦上,但是拷貝來拷貝去,一改動都要拷貝不是很麻煩嗎?而且你也不能保證萬一哪天都嗝屁了呢(#^.^#)。所以一般公司都有自己的服務器,項目一般是建在服務器上。我是平常自己玩,把代碼放在服務器(我用的是http://github.com)上,這樣子,在家,在公司都能隨時更改代碼并提交到github上,是不是很方便呢?
首先你得有一個github的賬號,去github的官網:https://github.com/
到sign up 上面按步驟將你的昵稱、郵箱、密碼填上,并注冊,之后登陸。
之后新建一個倉庫(git的倉庫就相當于你一個項目的儲存空間)。如下圖所示
進入你的倉庫
點擊綠色new按鈕
建完之后如下圖所示,里面什么都沒有,是空的。下面有提示讓我們create一些什么東西
注:到此為止,你相當于在遠程服務器(這里是github)上面建了一個倉庫(一個代碼項目對應著一個倉庫),之后需要我們把我們本地的代碼和東西上傳到github上對應的倉庫上備份一份
現在,就需要去安裝git工具啦
打開git的下載地址:https://git-scm.com/
點擊這里下載,它會自動檢測你的系統環境
安裝完之后檢測一下安裝情況 ---cmd命令行(我這里只講windows環境,其他環境大同小異)-----------win+r 回車
輸入git --version (git的版本)
這個工具的命令都是以git開頭,就像dotnet core 一樣,所有命令以dotnet開頭
ok,現在在你的電腦上git工具已經安裝好了,(這一步相當于在本地安裝了他git的應用,這個應用是我們用來連接服務器(github)的橋梁)
下面開始演示如何將項目上傳到我們之前在github上建的倉庫
首先進入你項目所在文件夾的根目錄,右鍵 git bash here
進入到git的界面
在其他類似有命令行的地方也可以使用,比如vs code的終端,vs 的nuget 輸出窗口,都是可以使用命令的
首先,我們需要初始化一下本地倉庫,輸入命令 git init
這條命令是把你本地的倉庫給建立起來了,就是把你的項目文件給給他git的倉庫標識一下,實際上就是在你的目錄下建立了一個.git的文件 (沒有找到的同學可以去把隱藏文件給打開)
第二步:將本地倉庫和遠程倉庫對應起來
命令:git remote add origin huguangcheng/git-
git remote add 遠程倉庫名(可以自己定義,默認是origin,初學不要亂改,以免混淆) 遠程倉庫地址(在這里我填的是我之前建的倉庫的地址)
遠程倉庫的地址,我們回到github的官網,到你的倉庫里新建的倉庫去:
把這個地址復制,就是你遠程倉庫的地址
命令回車之后,git就知道你本地這個項目倉庫對應的就是github上的那個倉庫了
第三步:上傳項目或者代碼到遠程倉庫
上傳到服務器需要三步曲:
- git add . -------------添加所有的文件到緩存區
- git commit -m "備注" ------------將緩存區的所有改動都給提交到本地倉庫管理中心去
3.git push -u origin master ----------將本地所有改動提交都推送到遠程倉庫
master是github遠程倉庫分支(master是默認的主干,自己就是一條分支)
輸入命令回車:
接著我們去我們的github上看看有沒有東西:
這顯示的是有的,至此我們的項目文件備份就算成功啦~就算電腦哪一天炸了我也能找回我的項目啦~
那備份有了,萬一小編不小心,把公司服務器上的項目給弄炸了,該怎么找回來呢?
本地代碼備份到github倉庫
從遠程倉庫上拉取項目:
命令:git clone 遠程倉庫地址
我在本地一個文件夾git bash here
到下面這個位置點擊按鈕,復制地址(是https)
輸入命令:git clone 遠程倉庫地址(這一個步驟其實已經將本地倉庫和遠程倉庫對應起來了,后邊不必再git remote 了)
東西也找回來了~
綜合運用場景:
小編有一個自己學習的小項目,但是小編在家里寫了,在公司沒事也想敲一敲,學習學習,總不能復制一份到u盤吧,回去之后再賦值粘貼?
我們接著上一章講,假如小編已經在公司把文件上傳到github上了,回到家并且clone下來了,如前面所講。現在小編寫了西游記第二章。
然后晚上睡覺的時候我需要把東西上傳到github上,以備在公司繼續用
我們先看下此時有什么變動(有時候你可能改動比較多,比如.net項目,一個vs 的解決方案你改動幾個地方可能有很多地方或者文件重新生成了)
git status
可以看到,他說我沒有倉庫
我們進入到下一級
cd git-
在git status
這里我們看到有紅色的 改動
我們再重復三部曲 add commit push
我們再回到github刷新一下就看到
好了,第二天去公司,沒事又能刷刷西游記了。嘿嘿。
注:關于文件丟失和代碼丟失該如何找回,在我的另一篇文章里有提到,希望可以幫助到各位同學。有任何疑問的同學可以看我的簽名,我們可以互相交流交流。