當(dāng)前位置:首頁 > 公眾號精選 > 嵌入式大雜燴
[導(dǎo)讀]點(diǎn)擊上方“ 果果小師弟 ”,選擇“ 置頂/星標(biāo)公眾號 ” 干貨福利,第一時(shí)間送達(dá)! 了解Git和Github 什么是Git Git(讀音為/g?t/)。是一個(gè)開源的分布式版本控制系統(tǒng),可以有效、高速地處理從很小到非常大的項(xiàng)目版本管理。Git 是 Linus Torvalds 為了幫助管理 Li

點(diǎn)擊上方“ 果果小師弟 ”,選擇“ 置頂/星標(biāo)公眾號
干貨福利,第一時(shí)間送達(dá)!

了解Git和Github

什么是Git

Git(讀音為/g?t/)。是一個(gè)開源的分布式版本控制系統(tǒng),可以有效、高速地處理從很小到非常大的項(xiàng)目版本管理。Git 是 Linus Torvalds 為了幫助管理 Linux 內(nèi)核開發(fā)而開發(fā)的一個(gè)開放源碼的版本控制軟件。

版本控制是一種記錄一個(gè)或若干個(gè)文件內(nèi)容變化,以便將來查閱特定版本修訂情況的系統(tǒng)。版本控制是指對軟件開發(fā)過程中各種程序代碼、配置文件及說明文檔等文件變更的管理,是軟件配置管理的核心思想之一。

GitHub是一個(gè)面向開源及私有軟件項(xiàng)目的托管平臺,因?yàn)橹恢С謌it 作為唯一的版本庫格式進(jìn)行托管,故名GitHub。Github是全球最大的社交編程代碼托管。https://github.com。Github可以托管各種git庫,并提供一個(gè)web界面(用戶名.github.io/倉庫名),作為一名編程開發(fā)人員如果不知道github那真的out了。

Github和Git是什么關(guān)系

關(guān)于github,這是一個(gè)網(wǎng)站,就是每個(gè)程序員自己寫的程序,可以在github上建立一個(gè)網(wǎng)上的倉庫,你每次提交的時(shí)候可以把代碼提交到網(wǎng)上,這樣你的每次提交,別人也都可以看到你的代碼,同時(shí)別人也可以幫你修改你的代碼,這種開源的方式非常方便程序員之間的交流和學(xué)習(xí)。

Git是一個(gè)版本管理工具,是可以在你電腦不聯(lián)網(wǎng)的情況下,只在本地使用的一個(gè)版本管理工具,其作用就是可以讓你更好的管理你的程序,比如你原來提交過的內(nèi)容,以后雖然修改了,但是通過git這個(gè)工具,可以把你原來提交的內(nèi)容重現(xiàn)出來,這樣對于你后來才意識到的一些錯(cuò)誤的更改,可以進(jìn)行還原。

為什么學(xué)習(xí)github

1. GitHub 上有很多大牛出沒,國外的咱先不說,就國內(nèi)的像百度、騰訊、阿里之類的大公司,里面的很多工程師都在 GitHub 上安家落戶,有空的時(shí)候多在 GitHub 上逛逛,關(guān)注一下大牛,沒準(zhǔn)還能搞個(gè)內(nèi)推什么的。
2. GitHub 上可以接觸到最新的最前沿的 IT 技術(shù)。因?yàn)?,我們知道任何軟件或者產(chǎn)品在上線發(fā)布之前,都有開發(fā)的過程和測試的過程,GitHub 上你可以接觸到這些產(chǎn)品的初始狀態(tài)、中間狀態(tài)和發(fā)布狀態(tài),你可以第一時(shí)間了解到產(chǎn)品的動向。而且根據(jù) GitHub 上每年發(fā)布的統(tǒng)計(jì)數(shù)據(jù),你可以知道哪些技術(shù)是最火熱的技術(shù),及時(shí)跟上這些技術(shù),而不是學(xué)一些過時(shí)的小眾的技術(shù)。這個(gè)恐怕是每個(gè)搞 IT 技術(shù)的人,都非常關(guān)心的一個(gè)問題。
3. 學(xué)習(xí)優(yōu)秀的開源項(xiàng)目
4. 關(guān)注行業(yè)前輩了解最新的行業(yè)動態(tài)


Git安裝和使用

為啥要安裝Git?這個(gè)就相當(dāng)于你電腦的CMD命令程序。我們安裝這個(gè)后就不用電腦的CMD命令了直接操作這個(gè)即可。首先就是去https://git-scm.com官網(wǎng)下載Git,根據(jù)你電腦系統(tǒng)的配置信息,下載對應(yīng)的安裝程序,然后開始進(jìn)行下面的步驟



1.下載好Git的安裝包,開始安裝,打開安裝包,出現(xiàn)如圖的界面,點(diǎn)擊Next:


2.選擇你要安裝的位置,我以C盤為例,路徑為圖中所示,安裝到其他位置的話,點(diǎn)擊Browse,選擇你要安裝的位置,然后點(diǎn)擊Next,進(jìn)入下一步:


3.選擇你是否創(chuàng)建桌面快捷方式,其他默認(rèn)即可,點(diǎn)擊Next,進(jìn)入下一步:


4.是否將Git快捷方式的目錄加入開始菜單欄


5.這個(gè)是選擇文本編輯器的方式,默認(rèn)是Vim,也可以選擇其他的方式,自主選擇,在這里我選擇的Vim默認(rèn)方式。選擇好文本編輯器的方式后,點(diǎn)擊Next,進(jìn)入下一個(gè)流程


6.選擇安裝 Git 時(shí)對環(huán)境變量PATH的影響,第一種影響較小,第三種會影響到Windows的自帶工具,默認(rèn)勾選中間項(xiàng),建議不要修改,直接點(diǎn)擊 “Next” 繼續(xù)安裝:


7.選擇 Git 在使用 HTTPS 時(shí)使用的庫,若無特殊需求,可保持默認(rèn)選項(xiàng),點(diǎn)擊 “Next” 繼續(xù)安裝:


8.選擇提交與拉取記錄時(shí),對換行符的處理方式,若無特殊需要,默認(rèn)選擇即可,點(diǎn)擊 “Next” 繼續(xù)安裝:


9.選擇模擬終端軟件(即命令行窗口軟件),若無特殊需要,可默認(rèn)選擇,點(diǎn)擊 “Next” 繼續(xù)安裝:


10.最新功能的詢問,若不想嘗試尚未保證穩(wěn)定性的新功能,默認(rèn)不勾選,點(diǎn)擊 “Install” 即可完成安裝:


11.安裝完成


12.回到桌面,點(diǎn)擊鼠標(biāo)右鍵,會出現(xiàn)兩個(gè)選項(xiàng)Git GUI HereGit Bash Here,在打開Cmd(Win+R),分別輸入gitgit --version,如果出現(xiàn)如下圖的情況,即安裝成功!

Git基本工作流程

1 Git結(jié)構(gòu)

2 本地庫和遠(yuǎn)程庫

團(tuán)隊(duì)內(nèi)部協(xié)作

跨團(tuán)隊(duì)協(xié)作

Git 命令行操作

1 本地庫初始化

git init

執(zhí)行完此命令后會在本地工作區(qū)生成一個(gè).git文件夾。里面存放著是本地庫相關(guān)的子目錄和文件,不要?jiǎng)h除,也不要胡亂修改。

2 設(shè)置簽名

1.方式一(項(xiàng)目級別/倉庫級別:僅在當(dāng)前本地庫范圍內(nèi)有效)

git config  user.name 'liuyao'
git config  user.email 'liuyao@163.com'

信息保存位置:./.git/config文件

2.方式二(系統(tǒng)用戶級別:登錄當(dāng)前操作系統(tǒng)的用戶范圍)

git config --global user.name 'liuyao'
git config --global user.email 'liuyao@163.com'

信息保存位置:./.git/config文件

  • 作用:區(qū)分不同開發(fā)人員的身份

  • 辨析:這里設(shè)置的簽名和登錄遠(yuǎn)程庫(代碼托管中心github)的賬號、密碼沒有任何關(guān)系。

  • 項(xiàng)目級別優(yōu)先于系統(tǒng)用戶級別,二者都有時(shí)采用項(xiàng)目級別的簽名.如果只有系統(tǒng)用戶級別的簽名,就以系統(tǒng)用戶級別的簽名為準(zhǔn),二者都沒有不允許

Git基本操作

1 狀態(tài)查看

git status #查看工作區(qū)、暫存區(qū)狀態(tài)

2 添加

git add [file name] #將工作區(qū)的“新建/修改”添加到暫存區(qū)

3 提交

git commit -m "commit message" [file name]  #將暫存區(qū)的內(nèi)容提交到本地庫

4 查看歷史記錄

git log                    #查看版本歷史記錄(方式一)
git log --pretty=oneline   #查看版本歷史記錄(方式二)
git log --oneline          #查看版本歷史記錄(方式三)
git reflog                 #查看版本歷史記錄(方式四)

本地庫與遠(yuǎn)程庫建立連接


比如你再在github上新建了一個(gè)倉庫。你要用電腦往新建的遠(yuǎn)程倉庫上傳東西。
1.在電腦的 D盤新建一個(gè)test文件夾 .當(dāng)然在哪個(gè)盤都可以,我這里只是舉一個(gè)例子。
在test文件夾下右鍵,點(diǎn)擊
git bash here

git init # 初始化本地庫

執(zhí)行完git init命令后,會在test文件夾下新建一個(gè).git文件。注意:此文件夾是一個(gè)隱藏文件夾。
2.假如你要上傳一個(gè)文本文件
git.txt.

git add git.txt # 把工作區(qū)內(nèi)容(git.txt文件)提交到暫存區(qū)

3.把暫存區(qū)的內(nèi)容(git.txt文件)提交到本地庫

#把暫存區(qū)的內(nèi)容(git.txt文件)提交到本地庫
git commit -m "my first commit" git.txt  

4.將本地庫推送到遠(yuǎn)程庫

#本地庫推送到遠(yuǎn)程庫
git push origin master  

克隆遠(yuǎn)程庫

把遠(yuǎn)程庫xxx克隆到本地庫(前提是你已經(jīng)在github上面新建了一個(gè)庫,或者有遠(yuǎn)程庫的地址鏈接)

1.克隆遠(yuǎn)程庫到本地

git clone [遠(yuǎn)程地址]
#git clone https://github.com/zhangsan/cdn.git  

多人協(xié)作

小劉要克隆小雅的xxx遠(yuǎn)程庫修改之后再提交給小雅(多個(gè)人之間的操作)

1 克隆

git clone [小雅遠(yuǎn)程庫的地址]
#git clone https://github.com/xiaoya-hub/cdn.git  

這樣你就把小雅的xxx遠(yuǎn)程庫克隆到你的本地庫。

2 修改文件

現(xiàn)在我就可以使用小雅庫里面的東西了。假如我在庫里面添加了一個(gè)good.txt文件。之后要把這個(gè)文件推送到小雅的遠(yuǎn)程庫。

3 將修改的文件提交到暫存區(qū)

git add good.txt #把工作區(qū)內(nèi)容(good.txt文件)提交到暫存區(qū)

4 暫存區(qū)的內(nèi)容提交到本地庫

git commit -m "這里填備注,隨便寫" good.txt #把暫存區(qū)的內(nèi)容(good.txt文件)提交到本地庫

5 讓小雅加小劉為好友

登錄小雅的github 打開小雅的xxx庫->settings->collaborators->填上劉堯的github用戶名->點(diǎn)擊Copy invite link->復(fù)制小雅xxx遠(yuǎn)程庫地址。把地址發(fā)送給小劉,不管是微信還是QQ都可以。

6 小劉接受小雅的邀請

小劉登錄自己的github,訪問小雅發(fā)送給自己的鏈接。會發(fā)現(xiàn)小雅邀請自己的界面,點(diǎn)擊接受就好了。

7 執(zhí)行推送

在小劉的本地文件夾執(zhí)行

 git push origin master #執(zhí)行推送

解決Github下載速度慢的問題

GitHub是一個(gè)巨大的開源寶庫,以及程序員和編程愛好者的聚集地,諸多優(yōu)秀的開源項(xiàng)目全部都是位于GitHub上。但是每當(dāng)我們準(zhǔn)備去下載一個(gè)優(yōu)秀的開源項(xiàng)目時(shí),會發(fā)現(xiàn) git clone的速度異常之慢!因?yàn)間ithub的服務(wù)器遠(yuǎn)在美國。小項(xiàng)目等幾分鐘無所謂;一旦項(xiàng)目龐大起來,或者項(xiàng)目文件數(shù)目一多, git clone 大概率會失?。‘?dāng)然網(wǎng)上常見的諸如修改hosts、代理等方式實(shí)際使用效果并不好,而且也不穩(wěn)定。

GitHub下載的加速方法:通過國內(nèi)碼云平臺的轉(zhuǎn)接,來完成GitHub上項(xiàng)目的下載加速。碼云是馬云團(tuán)隊(duì)開發(fā)的國內(nèi)版github。

注冊碼云

首先確保碼云上有賬戶,可以正常使用,沒有的可以自行注冊一下,注冊賬號這件事應(yīng)該是非常的簡單了。

將github的倉庫轉(zhuǎn)移到碼云

1.點(diǎn)擊右上角新建倉庫的加號 +,選擇“從 GitHub/GitLab導(dǎo)入倉庫”菜單


2.然后填寫位于 GitHub上你想 clone的倉庫地址并導(dǎo)入

3.這一步交給碼云來做速度是非??斓?,一會兒功夫,碼云就克隆出了一份和GitHub上一模一樣的項(xiàng)目!

4.接下來我們通過碼云上的項(xiàng)目地址,將項(xiàng)目clone到本地,這時(shí)候的clone速度就很快了,幾 MB/s的速度是沒問題的,很快項(xiàng)目就下載下來了。

這時(shí)候我們的目的已經(jīng)達(dá)到了,不過不要忘了,還有一件事沒做。

重新關(guān)聯(lián)遠(yuǎn)端地址

要知道,這時(shí)候克隆到本地的項(xiàng)目關(guān)聯(lián)的是碼云Gitee的地址,已經(jīng)和原來的GitHub項(xiàng)目完全脫離了,是另外一個(gè)副本。 在必要情況下我們還需要重新將我們本地的項(xiàng)目關(guān)聯(lián)到原來的GitHub項(xiàng)目上去,做法如下:
首先找到位于本地倉庫目錄下的隱藏文件夾 .git, 注意這個(gè) .git 文件夾是隱藏的文件夾。然后再這個(gè)文件夾下找到 config 配置文件.將配置文件中的 [remote"origin"].url 字段重新關(guān)聯(lián)到原來位于GitHub上的GitHub項(xiàng)目地址


當(dāng)然你也可以通過命令行來修改遠(yuǎn)端地址,效果一樣的至此大功告成,本地項(xiàng)目就相當(dāng)于是clone自GitHub,后續(xù)提交代碼,到GitHub上都沒有問題。


END
往期精彩回顧




、STM32第一章-寄存器你懂嗎
二、STM32第二章-啟動過程詳解
三、STM32第三章-系統(tǒng)時(shí)鐘配置
四、STM32第四章-外部中斷管理

如果覺得文章對你有幫助,歡迎轉(zhuǎn)發(fā)、分享給你的朋友,感謝您的支持!
如需轉(zhuǎn)載請聯(lián)系我!




免責(zé)聲明:本文內(nèi)容由21ic獲得授權(quán)后發(fā)布,版權(quán)歸原作者所有,本平臺僅提供信息存儲服務(wù)。文章僅代表作者個(gè)人觀點(diǎn),不代表本平臺立場,如有問題,請聯(lián)系我們,謝謝!

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運(yùn)營商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學(xué)會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團(tuán))股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉