---
# System prepended metadata

title: Git & GitHub 入門

---



# Git & GitHub 入門
 
## 軟體與服務安裝
* Git 軟體安裝 
* Github 會員註冊
* SourceTree 軟體安裝

---



## 開啟Git終端機

* Windows：Git Bash
    * 開始 > 搜尋輸入 > Git Bash


* Mac：*終端機*
    * 輸入「control + 空白」，關鍵字輸入「終端機」

---



## 終端機指令

|  windows   | 說明  |
| :-----| :---- |
| cd [路徑] | 前往資料夾路徑 |
| cd | 取得目前所在的位置 |
| dir | 顯示資料夾裡的檔案 |
| mkdir | 新增資料夾 |
| copy | 複製檔案 |
| move | 移動檔案 |
| del | 刪除檔案 |
| cls | 清除畫面上的內容 |

---



## Git常用指令

### 設定
* 檢視Git版本：`git --version `
* 輸入姓名：`git config --global user.name "姓名" `
* 輸入個人的 email：`git config --global user.email "email"`
* 查詢 git 設定內容：`git config --list`

### 版本控制指令
* 初始化數據庫： `git init`
* 查詢當前狀態：`git status`
* 要將檔案加入到指定資料夾
* 將檔案加入到索引：`git add .`
* 將索引檔案變成一個更新(commit)：`git commit -m "新增網頁環境"`
* 觀察 commit 歷史紀錄： `git log`
* 下載遠端數據庫： `git clone 數據庫網址`
* 更新到遠端數據庫： `git push "origin master"`

### 基本指令架構
![git基本指令架構](https://i.imgur.com/buIZ3fV.jpg)

## Git版本細節

* branch ：分支，預設分支叫做 master
* HEAD：指標 
* origin：預設遠端儲存庫名稱
* 回頭觀看版本內容：git checkout 編號
* 返回最新的版本：git checkout master(分支名稱)

---



## 還原技巧
### 新增檔案時，檔案還沒加追蹤時，清空工作目錄

* 顯示此次清除的檔案：git clean -n
* 強制清除檔案：git clean -f 

### 檔案已加入追蹤，清空工作目錄

* 還原工作目錄上已更改的檔案 ：git checkout --"檔案"

### 檔案加入到索引，退到工作目錄

* 加入索引的檔案還原到工作目錄：git reset HEAD

### 版本還原

* 還原前兩個版本：git reset HEAD^^
* 還原前兩個版本，所有更新檔案都放棄：git reset HEAD^^ --hard
* 觀看詳細歷史紀錄：git reflog
* 還原到特定 commit：git reset commit編號 --hard
* git reset 參數介紹 (https://gitbook.tw/chapters/using-git/reset-commit.html)

---


# Git 分支 (branch)

