赞
踩
#下载git yum -y install git #添加git普通用户 useradd git -d /home/git -m -s /bin/bash #---------可以不用操作 cd ssh-keygen -t rsa cp /root/.ssh/id_rsa.pub /home/ #----------可以不用操作 su git ssh-keygen -t rsa su root vi /etc/ssh/sshd_config #打开修改: PubkeyAuthentication yes AuthorizedKeysFile /home/git/.ssh/authorized_keys #重启sshd: systemctl restart sshd #切换用户: su git cd git init --bare simple.git #simple.git 版本库的名称 可以随便写 git config --global push.default simple #simple是git的配置 不能随意更改 #创建用户连接文件,修改权限(权限不修改为600,无密码操作不成功) touch /home/git/.ssh/authorized_keys chmod 600 /home/git/.ssh/authorized_keys #将客户端公钥添加到authorized_keys文件中 步骤省略 需要根据实际情况做对应的操作 例如: cat /home/id_rsa.pub >> /home/git/.ssh/authorized_keys #做上述操作后可以在对应的客户端做克隆操作 例如在linux下 su git clone ssh://git@IP地址:端口/home/git/simple.git windows亦然 -------------某linux需要从远程服务器上克隆(root用户)-------------------- ssh-keygen -t rsa cp /root/.ssh/id_rsa.pub /home/git/root.pub su git cat /home/git/root.pub >> /home/git/.ssh/authorized_keys su root 可以执行克隆操作 cd /root git clone ssh://git@IP地址:端口/home/git/simple.git
创建分支: git branch 分支名称
切换分支: git checkout 分支名称
创建并进入:git checkout b 分支名称
推送:git push origin 分支名称
拉取:git pull origin 分支名称
合并分支(先切换到被合并的分支上,即向哪个分支合并数据就切换到哪个分支)
例如 向主分支合并
1. 切换到主分支 git checkout master
2. 执行合并命令 git merge 分支名
3. 合并后需要执行推送指令 git push origin master
删除分支:git branch -d 分支名
删除分支后需要执行推送操作 git push origin :分支名
创建新分支并推送到远程,其他客户端拉取分支数据后需要执行git checkout 分支名 才可以从分支列表中看到
思路 客户端push时 会触发 post-receive中的脚本,在脚本中需要执行 git pull
su git cat /home/git/.ssh/id_rsa.pub >> /home/git/.ssh/authorized_keys cd 测试配置是否生效 git clone ssh://git@ip地址:端口/home/git/simple.git 如果无需输入密码即可克隆说明配置成功 cd /home/git/simple.git/hooks/ vi post-receive 输入 #!/bin/bash unset GIT_DIR cd /home/git/simple /usr/bin/git pull 保存退出 赋予可执行权限 chmod a+x post-receive
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。