學習時,接觸到git這個版本控制軟件,經常使用到它來管理代碼。以下介紹idea如何連接git,怎樣把項目提交到github。
使用IDEA操作Github教程目錄
一、 Git的相關介紹
簡介:介紹git的相關信息。
1.1 Git的信息
git 是一個 開源 的 分佈式 版本控制系統。它與 CVS 等集中式版本控制系統不同,git採用了分佈式版本庫的方式,不需要服務器端的軟件就可以進行版本控制。
GitHub是一個開源代碼庫,可以理解爲一個保存源代碼的地方。
1.2 Git的特性
從 一般開發者 的角度來看,git的功能特性:
- 可以從服務器上克隆 完整 的Git倉庫。
- 可以在 自己 的電腦上根據不同的開發目的,創建分支、修改代碼。
- 可以在單機上 自己 創建的分支上提交代碼,合併分支。
- 可以把 服務器上最新 的代碼拉到 自己的主分支 上合併。
- 修改生成補丁後,可以把補丁推送給主開發者。
- 如果主開發者發現兩個 一般開發者 之間 有衝突( 一般開發者之間可以合作解決的衝突),就會要求他們先把衝突解決,再由其中一個人提交;如果 主開發者 可以自己解決,或者 沒有衝突 ,就通過一般開發者提交的補丁。
- 一般開發者解決衝突的方法是用 pull命令 解決。
從 主開發者 的角度來看,git的功能特性:
- 可以 查看 (通過郵件或其它方式)一般開發者的提交狀態。
- 可以打上補丁,解決衝突(可以直接解決,也可以讓開發者之間解決後再提交)。
- 如果開源項目,需要決定哪些補丁有用,哪些沒用。
- 向服務器 提交結果 ,再通知所有開發者。
1.3 Git的優缺點
優點:
- 適合 分佈式 開發,強調個體。
- 速度快、比較靈活。
- 任意兩個 一般開發者之間 可以很容易解決衝突。
- 服務器 的壓力和數據量都不會很大。
- 離線 工作。
缺點:
- 學習週期 比較長。
- 中文 資料少。
- 代碼的 保密性差 ,一旦開發者把整個庫克隆下來,就可以完全公開所有代碼和版本的信息。
1.4 Git與集中式的區別
以與SVN的對比爲例, Git 與 SVN (集中式)的區別:
- git 把內容按 元數據 的方式存儲,而 svn 是按 文件 的方式存儲。
- git 沒有全局的版本號,而 svn 有。
- git的 內容完整性 比較好(採用 SHA-1哈希算法 存儲)。可以確保代碼內容的完整性,能確保在遇到磁盤或網絡問題時,降低對版本庫的破壞。
- 兩者的分支不同,對 svn 來說,分支只是版本庫的另一個目錄。
二、 IDEA連接Git
簡介:介紹idea如何連接git,在idea中使用git進行版本控制。
2.1 連接前的準備
2.1.1 安裝Git客戶端
在idea使用git進行版本控制之前,需要本機有 git客戶端 ,如果沒有,可按以下操作安裝。
在git官網下載電腦系統相應客戶端 :Git官網
打開官網後,根據自己電腦系統下載對應的客戶端,也可以選擇其它的版本下載
下載完成後,再驗證下是否安裝成功。
2.1.2 Git客戶端驗證
打開終端 (快捷鍵: Win + r ,輸入 cmd )
在終端輸入命令 git --version 檢驗
git --version
git安裝成功。
2.2 IDEA關聯GIt
打開idea,再打開idea的設置界面 File --> Settings (或 快捷鍵:ctrl + alt + s )
找到 Git ,如下圖所示,默認 自動 與關聯git 的
如果 沒有關聯 ,則找到git安裝目錄下的 git.exe 文件(如果自動關聯了,就跳過這一步)
點擊 Test 測試,查看是否關聯成功,如下圖則是 關聯成功 (可以看到下載的版本號)
2.3 IDEA提交項目(方法一)
2.3.1 推送項目的過程
如果是 第一次連接 的話,會彈出提示,填寫GitHub的 賬號 和 密碼
創建本地倉庫,點擊 VCS --> Import into Version Control --> Create Git Repository
選擇倉庫的地址(根據自己習慣選擇),下圖是選擇在要上傳的項目的本地文件夾,點擊 ok ,
項目的文件名會顯示 紅色 ,創建本地git倉庫成功
打開項目相應位置的文件夾,可以看到 .git 文件 (相對於其他文件夾,該文件夾有些暗)
點擊 VCS --> Commit ,或者按 快捷鍵 ctrl + k ,
打開後選擇 需要提交的內容 (通常是隻選擇需要提交的代碼,即 src文件 ,其他文件不勾選),以及 內容的註釋 (一般都寫上內容的描述,方便後續的管理,可以知道提交的原因) ,再點擊 Commit
將本地項目提交到github上,點擊 VCS --> Git --> Remotes
彈出以下窗口,如果 有 想提交到的遠程倉庫地址 ,直接點擊相應的地址,如果 沒有 ,則在該窗口右上角點擊的 + 號,添加遠程倉庫的地址
在 URL 這一欄添加遠程倉庫的地址
查找遠程倉庫地址 按這個操作, 打開 瀏覽器 , 選擇指定的遠程倉庫(想提交到的遠程倉庫),進入後如下圖,點擊 Clone or download
選擇 SSH 訪問鏈接(或者 HTTPS ,推薦選擇ssh),複製遠程倉庫地址
接着,在idea點擊 VCS --> Git --> Push (或者按快捷鍵: ctrl + shift + k )
點擊後,可以看到上面幾步操作中,選擇提交的項目和這次提交的描述,點擊 Push
提交完成,右下角彈出提示 Push successful
如果代碼有修改,則會出現顏色的提示
2.3.2 檢驗是否提交成功
從 瀏覽器 打開 GitHub ,檢查是否成功提交到 遠程倉庫 ,如下圖,提交成功(通常都是提交 src 文件就可以的了)
2.4 IDEA提交項目(方法二)
2.4.1 推送過程的演示
(忘了這個操作方法是不是要下載下面這個插件,如果你的idea 沒有顯示 這個選項,就 下載 這個插件,或者按上面 2.3 的方法操作)
打開 idea ,點擊 VCS --> Import into Version Control --> Share Project on GitHub
彈出以下窗口,如下圖所示,填入內容,點擊 Share
完成後idea右下角出現以下提示
2.4.2 檢驗是否提交成功
從 瀏覽器 打開 GitHub ,查看遠程倉庫是否創建成功,點擊遠程倉庫進入檢查項目是否提交成功
三、 連接過程中遇到的問題
3.1 提交項目時報錯 提示Push rejected:xxx:push to origin/master was rejected
解決方法: 點擊idea底部的 Terminal 打開終端
輸入以下命令,告訴系統允許合併與歷史不符的內容
git pull origin master --allow-unrelated-histories
如下圖所示
命令執行完後,重新push項目就可以了。
好了,繼續學習。