背景:雖然有GitHub、GitLab這樣強大的Git倉庫,但是涉及私有Git庫要收費,所以自己動手搭建免費的用用
環境:windows 7 旗艦版、JDK 1.8、IDEA 2017
1、Gitblit服務器搭建
1.1、下載最新版本的Gitblit,Gitblit官方網站:http://www.gitblit.com/,本文使用的是1.8.0版本

1.2、下載完畢后解壓至D:\Java下,改名為gitblit(只是個人習慣,Java開發相關的東西都放在這兒),觀察一下gitblit的目錄結構,紅色箭頭標記的是將要修改和操作的部分

1.3、在data目錄中將defaults.properties文件復制一份,改名為my.properties
1.4、打開gitblit.properties文件,注釋掉include = defaults.properties這句,添加include = my.properties這句,說明使用的是my.properties配置文件

1.5、找到server.httpPort,設定http協議的端口號: server.httpPort = 10101
1.6、找到server.httpBindInterface,設定服務器的IP地址(本機IP地址):server.httpBindInterface = 192.168.20.7
1.7、找到server.httpsBindInterface,設定為localhost:server.httpsBindInterface = localhost
1.8、在D:\Java\gitblit目錄同時按下shift+鼠標右鍵,找到"在此處打開命令窗口",輸入gitblit.cmd
1.9、打開瀏覽器,在地址欄輸入:https://localhost:8443/ 或 http://192.168.20.7:10101/,如果出現下圖,說明服務器已經搭建完畢。默認賬號和密碼均為 admin

2、gitblit創建用戶、版本庫,並分配訪問權限



2.2、創建版本庫,並設置版本庫訪問權限




點擊"保存"按鈕后,再用創建的temptation賬號登錄Git服務器觀察一下,發現可以看到admin賬號創建並分配給temptation賬號訪問的版本庫
3、Git客戶端搭建
3.1、下載Git客戶端最新版本,Git客戶端官網:https://git-scm.com/downloads,下載完畢后打開,一路回車默認安裝即可

3.2、Git本機配置,找到安裝好的Git客戶端,點擊Git Bash

命令語句:
查看是否存在.ssh目錄: cd ~/.ssh
如果不存在,則創建一個.ssh目錄: mkdir ~/.ssh
設置git全局賬號: git config --global user.name "賬號"
設置git全局郵箱: git config --global user.email "郵箱"
生成SSH Key: ssh-keygen -t rsa -C "郵箱"
3.3、在操作系統的用戶目錄下C:\Users\temptation\.ssh下,找到id_rsa.pub,將其中的內容復制出來

3.4、用創建的Git賬號temptation登錄Git服務器

3.5、將id_rsa.pub的內容貼到SSH Keys中,點擊"添加"即可

4、Git客戶端使用
4.1、在想要創建項目的路徑創建項目目錄,比如:在D:\workspace下新建目錄studygit
4.2、在目錄studygit下,右鍵找到"Git Bash Here",將下圖紅色箭頭標記部分復制貼入


4.3、再次刷新服務端,可以看到版本的提交

5、IDEA中直接使用已經創建好的Git項目



*6、用命令將本地項目上傳至git 重點
1、(先進入項目文件夾)通過命令 git init 把這個目錄變成git可以管理的倉庫
git init
2、把文件添加到版本庫中,使用命令 git add .添加到暫存區里面去,不要忘記后面的小數點“.”,意為添加文件夾下的所有文件
git add .
3、用命令 git commit告訴Git,把文件提交到倉庫。引號內為提交說明
git commit -m 'first commit'
4、關聯到遠程庫
git remote add origin 你的遠程庫地址
如:
git remote add origin https://github.com/githubusername/demo.git
5、獲取遠程庫與本地同步合並(如果遠程庫不為空必須做這一步,否則后面的提交會失敗)
git pull --rebase origin master
6、把本地庫的內容推送到遠程,使用 git push命令,實際上是把當前分支master推送到遠程。執行此命令后會要求輸入用戶名、密碼,驗證通過后即開始上傳。
git push -u origin master
7、狀態查詢命令
git status

有可能出現問題

解決方法:
應該是換行符編碼的問題,編輯器右下角點擊 CLRF ,改為 LF ,再嘗試提交即可。

鏈接
https://www.cnblogs.com/iflytek/p/9722302.html
https://blog.csdn.net/asdXT/article/details/86715903
