1. 程式人生 > >如何在windows下使用git及github倉庫管理專案

如何在windows下使用git及github倉庫管理專案

第一,下載並安裝git

目前windows版本的git有幾種實現,但我們選擇msysgit發行版,這是目前做得相容性最好的

使用預設配置安裝Git。這個不用多說,一路Next就可以,如果對各種選項不熟悉,建議使用預設配置,沒問題的。

第二,建立github賬號

什麼是Git和GitHub

Git —The stupid content tracker, 傻瓜內容跟蹤器,是一個由Linux核心開發者Linus為了更好地管理Linux核心開發而創立的分散式版本控制軟體

GitHub — 學生做版本控制最討厭的就是找伺服器,配置太麻煩了。GitHub這個網站為每個使用者提供伺服器託管其Git程式碼庫,免費空間為300M

。註冊GitHub後你就會有0.3G的免費空間,不過只能建立公開專案

為什麼不選CVS或SVN

  • Git提交/克隆/pull/push的速度更快
  • Git的絕大多數操作都可以在本地完成,不需要頻繁連線伺服器

註冊GitHub賬號

註冊


  • GitHub選擇的預設通訊方式是SSH,所以要先在Git裡面生成SHH Key,開啟Git Bash在其中輸入如下命令:

ssh-keygen -t rsa -C "[email protected]"

之後會讓你選擇是否對存放SSH Key的資料夾進行加密,一般都不需要的。一路回車,就OK了。

  • 在c盤,當前使用者資料夾下,有個.ssh 資料夾,在裡邊 找到 id_rsa.pub檔案,用記事本開啟,複製其中的全部內容。
  • 登陸你的GitHub賬戶,依次點選Account Settings > SSH Public Keys > Add another public key,把id_rsa.pub中的內容拷貝進去 。
  • 至此,基本的設定已經完成了。
成了。

測試你的Git

  • 經過上述配置,你的Gti應該可以通過SSH連線GitHub伺服器了,讓我們來測試下,輸入如下命令:

測試1

  • 會給你這樣的提示:

測試2

  • 輸入yes,會顯示:

測試3

  • 到這裡,說明你的SSH運轉良好。

如果提示你的金鑰不正確,那麼你需要重新確認上一步的操作是否完整無誤。

第三,建立本地git倉庫

首先,git要求使用者必須提供自己的身份標識,為此我們需要在git bash中執行以下命令:

git config --global user.name  'aa.Tessst'
git config --global user.email  [email protected]


其次,選擇git倉庫目錄

我們假設將git倉庫目錄放在D盤的OPENSource目錄下,可以通過在git bash中執行以下命令完成:

cd /d
mkdir OPENSource

注:git bash支援大多linux bash終端命令,你可以自己嘗試更多終端操作。

最後,建立專案並初始化git倉庫

我們的第一個專案是一個使用Python語言將XML檔案轉換成Python字典,通過執行以下命令完成此步驟:

mkdir Python-XML2Dict
cd Python-XML2Dict
git init

執行此操作後,git將在Python-XML2Dict目錄下建立一個隱藏目錄(.git),這個目錄就是git用來管理軟體版本的倉庫。


第四,使用git管理專案

     此步 和 在linux 上 使用 git 的 方法一樣,具體參考 我的 其他 博文!

第五,將專案提交到github管理,gitpush

如果 第二步 測試無錯,那麼 經過 以下兩步 就可以將本地的檔案提交到github倉庫了。

1、登入GitHub後,你可以在右上邊靠中那裡找到一個按鈕“creat a New Repository”,點選過後,填入專案名稱、說明等 過後就可以建立了,然後會出現一個提示頁面,記下類似  [email protected]:XXX/XXX.git 的地址,這個就是你這個專案的地址了。

2、

1 git remote add origin [email protected]:XXX/XXX.git
2 git push -u origin master //把本地 master 分支 推送到 伺服器的master分支上,如果伺服器沒有此分支,就 新建 此分支。這也是 在伺服器上新建分支的一種方法

這個[email protected]:XXX/XXX.git就是上面建立專案是生成的地址。現在開啟你的專案網址,你就可以發現你的程式碼已經展示出來了。

第六,直接 用 git pull 將專案 從 github 上 同步 下來

有兩種方法:

1、當git clone之後,直接git pull它會自動匹配一個正確的remote url

是因為在config檔案中配置了以下內容:

1 [branch "master"]2 remote = origin3 merge = refs/heads/master

表明:

1.git處於master這個branch下時,預設的remote就是origin;

2.當在master這個brach下,使用指定remote和merge的git pull時,使用預設的remote和merge。

2、但是對於自己建的專案並沒有這塊內容,需要自己配置

1 git remote add -f origin [email protected]:/srv/git/project.git //若是 執行過 第五步,那麼 這一句 就 不用了2 git config branch.master.remote origin //這一步 設定: 把 master 分支上 的 預設伺服器地址 設為 origin指向的地址 3 git config branch.master.merge refs/heads/master  //這一步 設定:如果當前分支是 master 分支,那麼 git pull之後,直接 把 “從 origin 下載 下來的 code合併到 master分支上“或者加上--global選項,對於全部專案都使用該配置。

建議:用第二種 方法,因為 如果 是 git clone的 專案,當 執行 git push 時,因為 在 git  config裡 url  是 只讀方式

[remote "origin"]
    fetch = +refs/heads/*:refs/remotes/origin/*
    url = git://github.com/xxx/xxx.git
//[email protected]:XXX/XXX.git 這才是 讀寫方式

---------------------------------

如果提交了敏感資訊,比如程式碼中設定的自己的密碼什麼的忘刪除就上傳上去了怎麼辦?

有兩個方法:

1、重新修改原生代碼,然後提交到伺服器(覆蓋),

2、直接登入 github 刪除之前的專案。刪除專案需要在GitHub網站上右上方找到admin按鈕,進去後右邊最下面有個刪除的按鈕,這樣就可以刪除了。

--------------------------

若是一個專案就託管在 GitHub 上。你可以把它的 URL 分享給每位對此專案感興趣的人。本例的 URL 是 http://github.com/testinguser/iphone_project。而在專案頁面的摘要部分,你會發現有兩個 Git URL 地址,見 右圖:


  右圖的 摘要中的公共 URL 和私有 URL

Public Clone URL 是一個公開的,只讀的 Git URL,任何人都可以通過它克隆該專案。可以隨意散播這個 URL,比如釋出到個人網站之類的地方等等。

Your Clone URL 是一個基於 SSH 協議的可讀可寫 URL,只有使用與上傳的 SSH 公鑰對應的金鑰來連線時,才能通過它進行讀寫操作。其他使用者訪問該專案頁面時只能看到之前那個公共的 URL,看不到這個私有的 URL。