Git 版本库创建
创建 www 用户
useradd www建空仓库
su www && cd /var/www sudo mkdir -p git/abc.git sudo chown -R www:www git cd git/abc.git git --bare init git update-server-info编辑
config加入下面代码[receive] denyCurrentBranch = ignore客户端应用
git clone ssh://user@ip/var/www/git/abc.git创建完毕裸版本库后还不能直接使用,首先要初始化版本库(例如增加一个文件),不然会报错
cd /var/www/html mkdir abc cd abc git init touch init_file git add init_file git commit -m "init"如果想在服务器版本库里面提交代码等操作,可以这样
vi /var/www/html/abc/.git/config追加下面两项配置
第一种:要求输入密码
[remote "origin"] url = ssh://user@ip:/var/www/git/abc.git fetch = +refs/heads/*:refs/remotes/origin/* [branch "master"] remote = origin merge = refs/heads/master第二种:或者不输入密码
[remote "origin"] url = /var/www/git/abc.git fetch = +refs/heads/*:refs/remotes/origin/* [branch "master"] remote = origin merge = refs/heads/masterpush到远端
git push origin master从代码库中更新提交的修改
git pull /var/www/git/abc.git
【扩展 1】开启 git http 访问
安装
fcgiwrapapt install fcgiwrap编辑配置
vi /lib/systemd/system/fcgiwrap.service更改
User和Group为:User=www Group=www重启
systemctl daemon-reload service fcgiwrap restartnginx 配置
server { listen 80; listen [::]:80; access_log /var/log/nginx/access_git-server.log; error_log /var/log/nginx/error_git-server.log; server_name git-server.mydomain.com; # htpasswd -bc /etc/nginx/auth.password usernameabc password123 auth_basic "登录"; auth_basic_user_file /etc/nginx/auth.password; location ~ (/.*) { fastcgi_pass unix:/var/run/fcgiwrap.socket; include fastcgi_params; fastcgi_param SCRIPT_FILENAME /usr/lib/git-core/git-http-backend; fastcgi_param GIT_HTTP_EXPORT_ALL ""; fastcgi_param GIT_PROJECT_ROOT /dir/git; fastcgi_param PATH_INFO $1; fastcgi_param REMOTE_USER $remote_user; } error_page 404 /404.html; location = /40x.html { } error_page 500 502 503 504 /50x.html; location = /50x.html { } }
【扩展 2】推送现有文件夹到新仓库
前往您的文件夹
cd existing_folder配置 Git 仓库(test 换成自己新生成的仓库名称)
git init --initial-branch=master --object-format=sha1 git remote add origin [email protected]:/test.git git add . git commit -m "Initial commit" git push --set-upstream origin master
本作品采用 知识共享署名-相同方式共享 4.0 国际许可协议 进行许可。
评论已关闭