1.下载安装git
https://mirrors.edge.kernel.org/pub/software/scm/git/
https://www.kernel.org/pub/software/scm/git/git-2.12.0.tar.gz
使用git --version查看是否安装成功;
添加用户useradd git -d +默认路径;
注:如果安装路径非默认安装路径 如/home/git
1)需添加软链接 ln -s /usr/local/git/2.12/bin/git-upload-pack /usr/bin/git-upload-pack
2)需在用户默认路径下添加.ssh 文件夹和authorized_keys文件(存放客户端公钥);
2.创建服务器仓库
git init --bare 2017.git
3.添加客户端公钥到服务器端
1)客户端生成公钥,默认生成路径C:\Users\Administrator\.ssh
ssh-keygen -t rsa -C "邮箱"
2)添加公钥到服务器
ssh git@服务器ip 'cat >> /gitsvn/svn/.ssh/authorized_keys' < ~/.ssh/id_rsa.pub
4.客户端克隆仓库
git clone git@服务器ip:/gitsvn/svn/路径/2017.git
5.禁止git用户ssh登陆
vi /etc/passwd
git:x:503:503::/gitsvn/svn/:/bin/bash修改为
git:x:503:503::/gitsvn/svn/:/bin/git-shell
6.git-receive-command not found:
进入工程路径:weixinWorkspace\misweinxin\.git,修改config文件如下:
[core]
repositoryformatversion = 0
filemode = false
bare = false
logallrefupdates = true
symlinks = false
ignorecase = true
[remote "origin"]
url = git@ip:/gitsvn/svn/misweinxin.git
fetch = +refs/heads/*:refs/remotes/origin/*
uploadpack = /usr/local/git/2.12/bin/git-upload-pack
receivepack = /usr/local/git/2.12/bin/git-receive-pack
[branch "master"]
remote = origin
merge = refs/heads/master
[remote "origin-misweixin"]
url = git@ip:/gitsvn/svn/misweixin.git
fetch = +refs/heads/*:refs/remotes/origin-misweixin/*
7.git push origin master 卡住
1)此方法未解决我的问题:添加sendpack.sideband属性并置为false就解决了。
全局的:git config --global sendpack.sideband false
仓库的:git config --local sendpack.sideband false
2) git 仓库拥有者更改
chown -R git git仓库路径,问题解决
8.eclipse push not permitted
增加软链接:
ln -s /usr/local/git/bin/git-upload-pack /usr/bin/git-upload-pack
ln -s /usr/local/git/bin/git-receive-pack /usr/bin/git-receive-pack