ubuntu上搭建git伺服器
git伺服器搭建
1.1安裝git
1.2 建立git使用者
mrwuzs@mrwuz:~$ sudo adduser git
[sudo] mrwuzs 的密碼:
正在添加使用者"git"...
正在添加新組"git" (1001)...
正在添加新使用者"git" (1001) 到組"git"...
建立主目錄"/home/git"...
正在從"/etc/skel"複制檔案...
輸入新的 UNIX 密碼:
重新輸入新的 UNIX 密碼:
passwd:已成功更新密碼
正在改變 git 的使用者資訊
請輸入新值,或直接敲Enter鍵以使用預設值
全名 []:
房間号碼 []:
工作電話 []:
家庭電話 []:
其它 []:
這些資訊是否正确? [Y/n] y
mrwuzs@mrwuz:~$
1.3建立倉庫
我是在/home下建立的myreponsitory檔案夾,在此檔案夾下初始化一個空的MyProject.git檔案夾改
root@mrwuz:/home# ls
git mrwuzs test_du
root@mrwuz:/home# mkdir myreponsitory
root@mrwuz:/home# cd myreponsitory/
root@mrwuz:/home/myreponsitory# ls
root@mrwuz:/home/myreponsitory# git init --bare MyProject.git
初始化空的 Git 倉庫于 /home/myreponsitory/MyProject.git/
root@mrwuz:/home/myreponsitory#
檢視一下文檔結構
root@mrwuz:/home# tree -d
.
├── git
├── mrwuzs
│?? ├── 公共的
│?? ├── 模闆
│?? ├── 視訊
│?? ├── 圖檔
│?? ├── 文檔
│?? ├── 下載下傳
│?? ├── 音樂
│?? └── 桌面
├── myreponsitory
│?? └── MyProject.git
│?? ├── branches
│?? ├── hooks
│?? ├── info
│?? ├── objects
│?? │?? ├── info
│?? │?? └── pack
│?? └── refs
│?? ├── heads
│?? └── tags
└── test_du
├── test_du01
├── test_du02
└── test_du03
25 directories
root@mrwuz:/home#
1.4 更改MyProject.git的權限
root@mrwuz:/home/myreponsitory# ls -la
總用量 12
drwxr-xr-x 3 root root 4096 1月 7 17:34 .
drwxr-xr-x 6 root root 4096 1月 7 17:33 ..
drwxr-xr-x 7 root root 4096 1月 7 17:34 MyProject.git
root@mrwuz:/home/myreponsitory# chown -R git:git MyProject.git
root@mrwuz:/home/myreponsitory# ls -la
總用量 12
drwxr-xr-x 3 root root 4096 1月 7 17:34 .
drwxr-xr-x 6 root root 4096 1月 7 17:33 ..
drwxr-xr-x 7 git git 4096 1月 7 17:34 MyProject.git
root@mrwuz:/home/myreponsitory#
1.5 擷取伺服器的ip
2 用戶端測試
2.1 windows測試1
在windows下安裝好git,請自行搜尋安裝教程。
2.1.1 從伺服器克隆倉庫
wzsfi@DESKTOP-DS5T4V5 MINGW64 ~
$ git clone [email protected]:/home/myreponsitory/MyProject.git
Cloning into \'MyProject\'...
The authenticity of host \'192.168.0.106 (192.168.0.106)\' can\'t be established.
ECDSA key fingerprint is SHA256:SKYGgtFm1ogFTTwftDgipHF841sviOSqzXswW3p2LfI.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added \'192.168.0.106\' (ECDSA) to the list of known hosts.
[email protected]\'s password:
warning: You appear to have cloned an empty repository.
2.2.2 往倉庫推送内容
wzsfi@DESKTOP-DS5T4V5 MINGW64 ~/MyProject (master)
$ git add test.txt
wzsfi@DESKTOP-DS5T4V5 MINGW64 ~/MyProject (master)
$ git commit -m "tets"
[master (root-commit) 2fbf0f8] tets
1 file changed, 0 insertions(+), 0 deletions(-)
create mode 100644 test.txt
wzsfi@DESKTOP-DS5T4V5 MINGW64 ~/MyProject (master)
$ git push origin master
[email protected]\'s password:
Counting objects: 3, done.
Writing objects: 100% (3/3), 201 bytes | 67.00 KiB/s, done.
Total 3 (delta 0), reused 0 (delta 0)
To 192.168.0.106:/home/myreponsitory/MyProject.git
* [new branch] master -> master