1. 程式人生 > >github建立分支上傳自己的檔案程式碼

github建立分支上傳自己的檔案程式碼

之前在一個未完成課題中接觸到了github,當時也自己成功使用github建立了分支並上傳了自己的檔案程式碼,今天再拿起時,突然發現怎麼也成功不了,真是一個鬱悶。只能說好記性不如爛筆頭,真是應該及時將自己所學記錄下來才是真理。初學者傷不起,花了一兩個小時,參考網上各種github入門指南,終於整理出了一點頭緒,趕緊記錄下來。

git的安裝就不說了,因為之前安裝好了,所以這次也就不用再折騰了,各種入門指南也都有,講的也很細緻。這裡就記錄一下建立分支和上傳檔案的過程步驟。

我這裡使用的環境是ubuntu系統。

首先說建立一個專案。假設你要建立一個專案,第一步當然是去新建一個目錄,以test為例,我在~/github/目錄下建立一個test的目錄,可以把你準備上傳共享的檔案都放在這個目錄裡面。想要讓git去監管這個專案目錄,首先需要初始化:

git init

這時會返回:


現在,已經成功的建立了一個repository(倉庫),只不過目前裡面還是空的,什麼都沒有,可以去檢視一下它的狀態:

git status

這時會返回:


可以看到這裡提示說沒有什麼東西可以commit(提交)的。接下來,去建立一個.cc檔案,命名為helloworld,然後把它放到test這個目錄裡面,接下來再來檢視它的狀態:

git status

這時會返回:


提示我們有一個未跟蹤的文:helloworld.cc,這也是目前專案裡的唯一的檔案,想讓git跟蹤這個檔案,需要把它新增到Staging(工作)區域,然後還需要commit(提交)一下。

git add helloworld.cc

再來檢視狀態:

git status

這時會返回:


提示說明添加了一個新檔案helloworld.cc,這裡注意一下,如果你想要新增檔案目錄中所有的檔案,可以使用下面的命令:

git add .(注意後面有個點號!)

新增好要跟蹤的問價以後,最後需要提交一下,提交的時候需要輸入一條描述資訊:

git commit -m "描述資訊"

這時會返回:


這裡會列出你新增的檔案或者是資料夾。

如果需要確認一下我們的工作,可以使用log命令:

git log

這時會返回:


再次檢視狀態:

git status

這時會返回:


Ok,這樣一個新的分支就已經建立好了,並且向裡面新增問價的步驟也已經說明。接下來就是如何將其共享到github的網站上,在遠端伺服器上做一個備份並讓大家一起來欣賞你的工作了。

前面所做的工作均是在本地電腦上進行完成的。使用github提供的服務,我們可以把專案檔案推送到github提供的遠端倉庫裡面,這樣一來你就可以不必擔心意外刪除掉你在本地電腦上的專案檔案了,因為在github提供的遠端倉庫裡為你提供了一個備份。同時如果你願意,別人也可以從github上得到你的程式碼。

建立的過程如下:

登入github之後,點選頁面右上角的“+“號,Repository name這裡


輸入倉庫的名稱,Description選項是可選的描述資訊,Public和Private就看你願不願意共享你的檔案了。選完之後點選Create repository.


建立完成以後,你會發現github給了你一些提示,你可以在本地去建立一個新的倉庫,也可以把本地上已有的倉庫推送到建立的這個github的遠端倉庫裡面。選擇第二種,將之前建立的test這個專案推送上去:

git remote add origin 你的github的倉庫地址

git push -u origin master

這兩行命令,先去為專案新增一個遠端的倉庫,告訴git這個遠端倉庫的地址是哪個,這個倉庫是由github提供的,然後使用git push,去把master這個分支推送到這個遠端的倉庫裡面。這會提示你輸入你在github上的使用者民和密碼,接下來就可以等著推送成功了。

完成以後,你就可以在github上看到你推送的專案了,在你剛才建立分支時得到的github倉庫的地址上面可以看到你推送的檔案全部都在了。在這個基礎上,你可以繼續使用github進行新增修改你的專案,這個是後面需要學習的地方了。

PS:在推送的過程中,可能會出現fatal:the remote end hung up unexpectly的錯誤,這個可能是因為push的檔案過大導致的,解決的辦法就是修改快取的大小:

git config http.postBuffer 524288000

修改完之後繼續推送就好了。(當然我覺得這個跟網速肯定也有關係。。。)

除了在這個基礎上修改之外,接下來還還需要看的是如何建立新的分支,進行一些新的想法的測試。