[toc]
## 免登錄提交
>https://github.com/settings/ssh/new
### 生成ssh公鑰
```
ssh-keygen -t rsa -C "你的郵箱@xx.com"
```
### 查看生成的公鑰
```
cat ~/.ssh/id_rsa.pub
```
## 將項目克隆到本地
```
git clone [ssh地址]
```
## 提交
```
git add .
git commit -m '完成了什么或修正了什么'
git push
```
### 快捷提交
當提交過一次后,我們就可以
```
git commit -a -m 'xxx'
```
進行快捷提交
## 功能開發
### 創建分支
一個分支對應一個功能
,先在線上創建分支
,再在本地拉取
```
git pull
```
### 切換分支
拉取后切換到創建的分支上后
再進行開發
```
git checkout index-swiper
```
### 推送分支
將開發好的分支推送到線上
```
git push
```
### 合并分支
當測試沒有問題后
切換到主干,將剛才開發好的分支合并到主干上
```
git checkout master
```
```
git merge origin/index-swiper
```
這樣確保本地的master分支上是整個項目最新的代碼
>[info] 這個時候線上的master分支也已經合并了,審核的人合并的
>
>,嗯...如果是一個人開發,你可以在本地合并后再push一次
>,確保線上的主分支也是最新的,以便在下一次創建新分支時是基于最新的進度創建的
## 在本地創建新的分支并推送到線上
```
//在本地創建新分支v2
git branch v2
//切換到新分支
git checkout v2
--- commit一次 ---
```
將本地的v2分支推送到遠程的v2分支
```
git push origin v2:v2
```
↓????
```
git push --set-upstream origin v2
```
## 沖突解決