天天看點

Git的使用(通過指令行, Eclipse, IDEA, Docker)一. 通過指令行使用Git(以Windows為例)二. 通過Eclipse使用Git三. 通過IDEA使用Git(IDEA, PyCharm, AndroidStudio等這些套路都類似)四. docker搭建GitLab的docker-compose.yml檔案五. .gitignore檔案

一. 通過指令行使用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...

Git的使用(通過指令行, Eclipse, IDEA, Docker)一. 通過指令行使用Git(以Windows為例)二. 通過Eclipse使用Git三. 通過IDEA使用Git(IDEA, PyCharm, AndroidStudio等這些套路都類似)四. docker搭建GitLab的docker-compose.yml檔案五. .gitignore檔案

2.搜尋git, 選擇Git Repositories

Git的使用(通過指令行, Eclipse, IDEA, Docker)一. 通過指令行使用Git(以Windows為例)二. 通過Eclipse使用Git三. 通過IDEA使用Git(IDEA, PyCharm, AndroidStudio等這些套路都類似)四. docker搭建GitLab的docker-compose.yml檔案五. .gitignore檔案

3.先複制好Git的倉庫路徑(如: [email protected]:paulandcode/blogs.git), 然後在Eclipse彈出的視窗粘貼路徑, 最後一直點選下一步, 并選擇本地項目儲存路徑即可下載下傳整個項目到本地.

Git的使用(通過指令行, Eclipse, IDEA, Docker)一. 通過指令行使用Git(以Windows為例)二. 通過Eclipse使用Git三. 通過IDEA使用Git(IDEA, PyCharm, AndroidStudio等這些套路都類似)四. docker搭建GitLab的docker-compose.yml檔案五. .gitignore檔案
Git的使用(通過指令行, Eclipse, IDEA, Docker)一. 通過指令行使用Git(以Windows為例)二. 通過Eclipse使用Git三. 通過IDEA使用Git(IDEA, PyCharm, AndroidStudio等這些套路都類似)四. docker搭建GitLab的docker-compose.yml檔案五. .gitignore檔案

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檢出項目

Git的使用(通過指令行, Eclipse, IDEA, Docker)一. 通過指令行使用Git(以Windows為例)二. 通過Eclipse使用Git三. 通過IDEA使用Git(IDEA, PyCharm, AndroidStudio等這些套路都類似)四. docker搭建GitLab的docker-compose.yml檔案五. .gitignore檔案
Git的使用(通過指令行, Eclipse, IDEA, Docker)一. 通過指令行使用Git(以Windows為例)二. 通過Eclipse使用Git三. 通過IDEA使用Git(IDEA, PyCharm, AndroidStudio等這些套路都類似)四. docker搭建GitLab的docker-compose.yml檔案五. .gitignore檔案

2.更新和送出

(1) 按鍵

Git的使用(通過指令行, Eclipse, IDEA, Docker)一. 通過指令行使用Git(以Windows為例)二. 通過Eclipse使用Git三. 通過IDEA使用Git(IDEA, PyCharm, AndroidStudio等這些套路都類似)四. docker搭建GitLab的docker-compose.yml檔案五. .gitignore檔案

上圖5個按鍵分别是:更新、送出、比較、曆史、Revert

(2) 檔案類型

白:無修改;藍:修改; 紅:新增未Add Git; 綠:新增Add to Git

Git的使用(通過指令行, Eclipse, IDEA, Docker)一. 通過指令行使用Git(以Windows為例)二. 通過Eclipse使用Git三. 通過IDEA使用Git(IDEA, PyCharm, AndroidStudio等這些套路都類似)四. docker搭建GitLab的docker-compose.yml檔案五. .gitignore檔案

(3) 更新

點選更新後,請在Event Log頁面檢視結果(可能有種種原因更新失敗)

Git的使用(通過指令行, Eclipse, IDEA, Docker)一. 通過指令行使用Git(以Windows為例)二. 通過Eclipse使用Git三. 通過IDEA使用Git(IDEA, PyCharm, AndroidStudio等這些套路都類似)四. docker搭建GitLab的docker-compose.yml檔案五. .gitignore檔案

(4) 送出

1> 點選Commit 按鈕, 會直接送出至本地庫. 更新至遠端庫需要再Push一次: VCS --> Git --> Push

2>點選Commit and Push: 送出到本地, 并且送出到遠端倉庫, Commit and Push按鈕的位置在送出頁面Commit按鈕旁邊的下拉箭頭

Git的使用(通過指令行, Eclipse, IDEA, Docker)一. 通過指令行使用Git(以Windows為例)二. 通過Eclipse使用Git三. 通過IDEA使用Git(IDEA, PyCharm, AndroidStudio等這些套路都類似)四. docker搭建GitLab的docker-compose.yml檔案五. .gitignore檔案

(5) 比較

在History中右鍵compare

Git的使用(通過指令行, Eclipse, IDEA, Docker)一. 通過指令行使用Git(以Windows為例)二. 通過Eclipse使用Git三. 通過IDEA使用Git(IDEA, PyCharm, AndroidStudio等這些套路都類似)四. docker搭建GitLab的docker-compose.yml檔案五. .gitignore檔案

四. 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檔案

繼續閱讀