需要自己架設GIT server
上網找了一些文章,可是都有些資訊是比較舊的
就自己稍微整理了一下
這篇在說明使用http & https建立git環境
ssh還沒研究過
1.首先安裝GIT http://git-scm.com/
我裝的是x64版本,跟x32版本可能會有些許不同,請自行注意
2.安裝 TortoiseGit https://tortoisegit.org/(你有自信用cmd操作的話也可以不用)
3.安裝Apache https://httpd.apache.org/
可以使用xampp又或著其他包含Apache的工具
IIS理論上也可以使用GIT,不過我沒研究過
4.建立管理空間
在這裡我放在 D:/GitRepos
5.修改Apache設定
開啟Apache裡面的httpd.conf檔案,找到
<Directory />
...
...
</Directory>
在後面加入
<Directory "D:/GitRepos">
Options Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
<Directory "X:/Program Files/Git/mingw64/bin">
Options Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
注意紅字部分
紅字部分是你的路徑設定
改完之後拉到最下面,在最後面加入以下內容
SetEnv GIT_PROJECT_ROOT D:/GitRepos
SetEnv GIT_HTTP_EXPORT_ALL
ScriptAliasMatch \
"(?x)^/git/(.*/(HEAD | \
info/refs | \
objects/(info/[^/]+ | \
[0-9a-f]{2}/[0-9a-f]{38} | \
pack/pack-[0-9a-f]{40}\.(pack|idx)) | \
git-(upload|receive)-pack))$" \
"X:/Program Files/Git/mingw64/libexec/git-core/git-http-backend.exe/$1"
<Location /git>
AuthType Basic
AuthName "GIT Repository"
AuthUserFile "D:/GitRepos/htpasswd"
Require valid-user
</Location>
一樣,紅字部分是你自己的路徑
D:/GitRepos/htpasswd
這個是你的驗證檔,很重要9.建立驗證檔
開啟CMD,進入Apache\bin的資料夾輸入
htpasswd -cmb D:\GitRepos\htpasswd hello 1234
如果成功他會出現
Adding password for user hello
此時就可以測試你以上的步驟有沒有成功
在D:\GitRepos 底下建立一個index.html,隨便輸入點內容
開啟瀏覽器,輸入 http://127.0.0.1/git
他會出現叫你輸入帳號密碼的視窗
此時輸入帳號 hello ,密碼 1234
登入之後出現你剛剛建立的index.html就代表你以上的步驟都完成了
10.建立Git Bash
在D槽,對著 GitRepos的資料夾按右鍵,選擇Git Bash,會出現Git 的console視窗
git init --bare project
他會建立一個名為project的git資料夾
此時在輸入三行指令
此時在輸入三行指令
cd project
git update-server-info
touch daemon-export-ok
這樣你就可以建立外部連結了
如何測是有沒有成功?
開啟瀏覽器,輸入 http://127.0.0.1/git/project
如果有出現project裡面的資料列表,就代表成功了
你可以直接放你所要建立GIT的檔案進去
11. Git Clone
此時到你要使用的本地資料夾,點選滑鼠右鍵,按Gig Clone
URL 輸入 http://127.0.0.1/git/project
他會要你輸入帳號密碼
輸入帳號密碼之後,他會出現同步訊息,藍字出現就代表成功了
參考資料
額外閱讀(外部連結)
您好, 依照您的步驟做, 當在瀏覽器輸入 http://127.0.0.1/git 及帳密後顯示 Object not found! 參考其他網站在 httpd.conf 增加 Alias /git "D:/GitRepos" 才成功
回覆刪除引言TWG 加在這
回覆刪除Alias /git "D:/GitRepos"