一. 通過指令行使用Git(以Windows為例)
1.安裝Git-2.12.2.2-64-bit.exe
2.任何目錄下, 右鍵, Git Bash Here
3.初次安裝git配置使用者名和郵箱
git config --global user.name "paul"
git config --global user.email "[email protected]"
4.檢視是否已有ssh公鑰
type %userprofile%\.ssh\id_rsa.pub
若沒有, 則會提示找不到檔案
5.若沒有, 則去生成公鑰
ssh-keygen -t rsa -C "[email protected]" -b 4096
生成過程中會讓你設定公鑰路徑, 直接回車使用預設路徑即可
還會讓你設定密碼, 若不設定密碼, 則直接回車即可
6.添加公鑰到遠端倉庫
cat ~/.ssh/id_rsa.pub
上面的指令會獲得公鑰, 然後需要你手動将公鑰添加到遠端倉庫(如GitHub)
7.若是搭建的gitlab私服,則連接配接倉庫時會提示無法解析主機名, 此時要在C:/Windows/System32/drivers/etc下的hosts檔案中加入一行代碼
192.168.0.233 gitlab.ywz.com
8.若本地沒有原始代碼, 需要從遠端Git倉庫下載下傳原始代碼到本地
cd new_folder
git clone ssh://[email protected]:paulandcode/blogs.git
9.若本地有原始代碼, 遠端Git倉庫沒有原始代碼, 需要将原始代碼上傳到遠端倉庫. 若使用GitHub, 最好加上README.md, .gitignore, LICENSE這幾個基本檔案.
cd existing_folder
git init
git remote add origin https://github.com/paulandcode/paulandcode_lucene.git
git add .
git commit -m "Initial commit"
git push -u origin master
若提示: fatal: remote origin already exists, 則移除後再添加Git倉庫
git remote rm origin
10.同步遠端Git倉庫代碼到本地
git pull --rebase origin master
11.送出代碼到本地Git倉庫
git add test.html
git commit -m "Commit test.html"
12.送出本地Git倉庫代碼到遠端Git倉庫
git push -u origin master
二. 通過Eclipse使用Git
1.Window --> Show View --> Other...

2.搜尋git, 選擇Git Repositories
3.先複制好Git的倉庫路徑(如: [email protected]:paulandcode/blogs.git), 然後在Eclipse彈出的視窗粘貼路徑, 最後一直點選下一步, 并選擇本地項目儲存路徑即可下載下傳整個項目到本地.
4.更新代碼
選中要更新的檔案夾點選右鍵 --> Team --> Pull (将伺服器中新增的代碼拉到本地, 若有沖突, 則會報錯, 隻會拉到在本地git倉庫, 不會拉到本地代碼中, 并且在項目名右側會有↓提示, 例:offweb[offweb master ↓1], 這表示本地git倉庫有1個檔案等待拉取)
5.送出代碼
選中要送出的檔案夾點選右鍵 --> Team --> Add to Index --> Commit And Push(将本地代碼送出到git伺服器, 若有沖突, 則會報錯, 隻會送出到在本地git倉庫, 不會送出到git伺服器, 并且在項目名右側會有↑提示, 例:offweb[offweb master ↑1], 這表示本地git倉庫有1個檔案等待送出)
6.解決沖突
不論是先Pull還是先Push, 都有一個規律:隻有Pull之後才會出現沖突資訊, 隻有出現沖突資訊後, 下一個push才可以送出成功. 是以解決沖突分三步: 第一步, Pull後出現沖突資訊(Pull --> Push --> Pull 或者 Push --> Pull); 第二步, 解決沖突; 第三步, Push
7.使用Eclipse自帶的Merge Tool解決沖突
選中項目根檔案夾點選右鍵 --> Team --> Synchronize Workspace(與資源庫同步) --> 有沖突的代碼處(紅色雙向箭頭)右鍵Merge Tool解決沖突 --> 解決完後右鍵Add to Index --> Commit And Push
三. 通過IDEA使用Git(IDEA, PyCharm, AndroidStudio等這些套路都類似)
1.在IDEA上通過Git或者GitHub檢出項目
2.更新和送出
(1) 按鍵
上圖5個按鍵分别是:更新、送出、比較、曆史、Revert
(2) 檔案類型
白:無修改;藍:修改; 紅:新增未Add Git; 綠:新增Add to Git
(3) 更新
點選更新後,請在Event Log頁面檢視結果(可能有種種原因更新失敗)
(4) 送出
1> 點選Commit 按鈕, 會直接送出至本地庫. 更新至遠端庫需要再Push一次: VCS --> Git --> Push
2>點選Commit and Push: 送出到本地, 并且送出到遠端倉庫, Commit and Push按鈕的位置在送出頁面Commit按鈕旁邊的下拉箭頭
(5) 比較
在History中右鍵compare
四. docker搭建GitLab的docker-compose.yml檔案
version: "3.5"
services:
gitlab:
image: gitlab/gitlab-ce:10.5.4-ce.0
restart: always
container_name: gitlab
ports:
- "8085:80"
- "2222:22"
hostname: "gitlab.ywz.com"
environment:
GITLAB_OMNIBUS_CONFIG: |
gitlab_rails['gitlab_shell_ssh_port'] = 2222
volumes:
- type: volume
source: config
target: /etc/gitlab
- type: volume
source: logs
target: /var/log/gitlab
- type: volume
source: data
target: /var/opt/gitlab
volumes:
config:
name: gitlab_config
logs:
name: gitlab_logs
data:
name: gitlab_data
五. .gitignore檔案
.mymetadata
.checkstyle
.classpath
.project
.class
.war
.zip
.rar
.idea
*.iml
*.py[cod]
.settings/*
/indexes/*
/src/main/webapp/WEB-INF/classes/*
/src/main/webapp/userfiles/*
*/target/
*/target/*
小知識: Windows如何建立以"."開頭的檔案(如.gitignore檔案)
情況: Windows下, 如果建立以"."開頭的檔案, 會提示: 必須鍵入檔案名.
解決: 在檔案名後面再加個".", 例如".gitignore.", 則可以建立.gitignore檔案