---
# System prepended metadata

title: 五 、 Git Hub 整合操作
tags: [GIT101, Lidemy心得, 進度筆記, 2020六月第四週]

---

# 五 、 Git Hub 整合操作
###### tags: `GIT101` `進度筆記` `Lidemy心得``2020六月第四週`

## 串聯到 GitHub
1. 先在 GitHub 開一個專案(repository) ， 找到 …or push an existing repository from the command line 使用指令 `git push -u origin master` 將本地 test_git_demo 推上去 GutHub 。

   p.s. 如果是新建專案則會顯示 *[new branch]     master -> master; 
   已經有的專案會顯示: Everything up-to-date 。

2. 假設你改完檔案後 ， 則需要進行 commit `git commit -am "XXXXXX"` ， 如果需要改檔案就可以先不 push ，但每次修改後記得要 commit; 改好後記得 push `git push origin master` 上去 ， 完成與 GitHub 同步的動作 。

3. 如果在 GitHub 有改動的話 ， 記得 pull `git pull origin master`  下來！

4. 如果開了 branch `git branch name` ， 記得先移動過去 branch 所在位置 `git checkout name` 再進行修改或是創造檔案或資料夾 ， 好了後用 `git status` 看檔案或資料夾有沒有 staged ， 沒有的話記得 `git add .` 將檔案加入到 staged ， 接著 commit 加入專案 `git commit -am "name"` ， 好了後欲與 GitHub 同步則要進行 push `git push origin branchname` 好了後上 github 可以看到 branch 數目 。

## 在 GitHub 上把 branch 合併到 master branch
找到這個 Compare & pull request ， 點一下: ![](https://i.imgur.com/TTn3TJ8.png)

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

成功的話會表示: ![](https://i.imgur.com/Ku96NqA.png)

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

按下 Merge  pull request 就會使 master branch 更新 。
![](https://i.imgur.com/Q4ZTLu5.png)
如果是本機的 merge 則是 `git merge branch name` 後再推上去 GitHub 。

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

同時也可以將之前的 branch 刪除
![](https://i.imgur.com/9MlVqCL.png)
在 GitHub 上做 merge 的好處是可以看 merge 的變動 。

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

最後可以將 GitHub 上 merge 後的變動拉回本機 `git pull origin master` 。

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

用 `git log`: 可以看到 ![](https://i.imgur.com/d7WjLlz.png)

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

## GitHub Pages 
好處是可以將 GitHub 變成靜態網頁; 找到 任何一個 repository 的 Settings 按下: 
![](https://i.imgur.com/H7U1uX6.png)   
   
---------------------------------------------------------------------    

找到 GitHub Pages 將其啟用:   

![](https://i.imgur.com/zYNQvt4.png)  

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

成功後會給個網址 ， 但點進去是 404 頁面:    

![](https://i.imgur.com/TpPVn7M.png)    

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

如果在那個網址後面加檔案名稱(前提是檔案內有寫 code) ， 會出現網頁的顯示風格 ， 有點類似 domain:    

![](https://i.imgur.com/nMwmIyi.png)    

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

如果在專案底下建立檔案 ， 並用語法如 markdown 或 html 格式則可以顯示出類似網頁頁面:

![](https://i.imgur.com/8W4wpbN.png)

同時也可以在 Settings 內換掉網頁風格的 theme 。

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

## 建立了 GitHub Pages 後但想要從本機 push 上 GitHub 會 ？
如果已經建立了 ReadeMe.md 在 GitHub 上 ， 但如果用指令 `git push origin master` 想推上去
GitHub 的話 ， 會看到錯誤訊息:

![](https://i.imgur.com/uy0xoNN.png)

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

或是看到遠端位置內的檔案比本機新的狀況 ， 所以要先用 `git pull origin master` 先把改變給抓下來:

![](https://i.imgur.com/1jbosHd.png)

確定 Local 端與 GitHub 同步做改變 ， 並且可以用 GitHub flow 管理專案 。

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

## 使用 GitHub flow 管理專案(協同作業)
可以上 [GitHub Guides](https://guides.github.com/introduction/flow/) 觀看建議流程:
會先建議有任何改變時 Create a branch 後再 Add commits 再來就是用 Open a Pull Request 這功能在
GitHub 上跟大家討論 ， 測試完成後 merge ; 假設今天 create new branch ， `git branch name` 後修改了檔案 ， 並用 `git commit -am 'name'` 創造了新專案後需用 `git push origin branchname` (而不是用 `git push origin master` 推 master repository 上去)推上去後 ， 接著到 GitHub Open a pull request:

![](https://i.imgur.com/qFCJfLK.png)

點選這個 Compare & pull request 。 

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

或是到 Pull request 介面 找 New pull request 把新開的 branch 合併到 master branch 上:

![](https://i.imgur.com/OY674d1.png)


接著 Create pull request 後可以到  Files changed 可以按下 Review changes 留言 ，
最後要 merge branch 並且把 branch 刪除 。

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





