關卡內容:

把電腦裡的 repositoryremoterepository連結起來,並 push 電腦上的修改。

Remotes

當專案傳到 GitHub 上面,它會被儲存在 GitHub 的主機上。這個專案就變成了 remote repository,因為專案現在 GitHub 的主機上也有一份了,所以叫做 remote。當你把電腦上的程式修改 pushremote,這就叫做同步。

其他人可以透過 pull 你的 remote repository 來取得專案的最新版本,儲存到他們的電腦上。這樣一來,大家就可以一起修改同一個專案,而不需要用 USB 或 Email 等其他方式來取得專案的最新進度。

步驟:建立一個 Remote Repository

你想要把電腦上的版本和存在 GitHub.com 上的 remote 版本做同步。所以我們先在 GitHub 上開啟一個新的 remote repository

Readme(讀我檔案)、.gitignore 和 License(著作權聲明)

在開源軟體中,這些是你將會常常見到的檔案。

readme 通常是用來解釋一個程式的功用、使用方法以及如何貢獻程式碼(但有時候這部份也會另外用一個 CONTRIBUTING.md 來說明)。

.gitignore 則是要忽略的檔案清單,這是用來告訴 Git,當在做版本控制記錄的時候,不要理會這些檔案。例如,當某個檔案中包含密碼的時候,我們就不希望 Git 記錄它們下來。

License(著作權聲明)是用來聲明一個程式可以、或不可以被怎麼樣的使用。你可以到 choosealicense.com 參考一些範例。

但就現在在做的練習來說,我們暫時不需要著作權聲明。

步驟:把電腦上的 repositoryremote repository 連結在一起

現在我們已經在 remote(GitHub 上)新建了一個 repository。在 repository 的頁面上你會看到一個 'Quick Setup' 的部份,確認選擇的網址是 'HTTP',而不是 'SSH',右邊的欄位就是這個 remote repository 在 GitHub 主機上的位址。

回到終端機,在我們剛剛初始化過 Git 的 'hello-world' 的資料夾裡頭,我們需要告訴 Git 這個 remote 的位址。同一個 Git 專案中,可以有很多不同的 remote,所以每一個 remote 都需要一個名字。而最主要、原始的那一個,通常都是叫做 origin

git remote add origin <URLFROMGITHUB>

你電腦上的 repository 現在知道了專案有一個在 GitHub 上的 remote,叫做 'origin'。你可以想像這就好像是把一個電話號碼配上一個名字一樣,這樣當你要打電話的時候,就不用記得號碼了。

備註:

如果你有安裝 GitHub for Windows,Git 初始化的時候就會直接設定了一個叫做 'origin' 的 remote,所以你不需要新增,只要設定這個 'origin' remote 的位址就好了:

git remote set-url origin <URLFROMGITHUB>

步驟:把你的修改 Pushremote

接下來你需要 push(傳送)所有你在電腦上做的修改到 GitHub 上的 remote。通常你會希望 remote 的程式版和電腦上的程式版本是一樣的。

Git 有一個 branch 系統,讓你可以同時修改一個程式的不同功能,之後會再深入介紹。系統會預設一個名稱給最初的 branch,通常就會叫做 'master'。當你 push(或之後 pull)一個專案的時候,你必須要告訴 Git 你想要的是哪一個 remote 上的哪一個 branch 的進度。

也就是說,我們現在想要把 'master' branch 的程式傳送到先前新增的 'origin' remote

git push origin master

完成之後,你現在就可以回到 GitHub 的 repository 頁面,重新整理。哇哇哇!程式是不是都同步了呢?恭喜你建立了第一個公開的 repository

{{{verify_directory_button}}}

撇步