如何从远程git服务器上拉取一个新建的git项目?
git clone +远程仓库地址
这里需要注意了,远程仓库会有两个地址,一个是使用SSH协议,一个是使用HTTP协议
如果你以后需要有push的权限,要使用SSH协议的那个仓库地址
如果你只是下下来研究代码,不需要上传本地的修改,可以使用HTTP协议的地址。
Git没有客户端服务器端的概念,但是要共享Git仓库,就需要用到SSH协议(FTP , HTTPS , SFTP等协议也能实现Git共享,此文档不讨论),但是SSH有客户端服务器端,所以在windows下的开发要把自己的Git仓库共享出去的话,就必 须做SSH服务器。
一、安装GIT
Windows下使用msysgit,
本文使用Git-178-preview20111206exe 安装要点步骤
安装完成后,可以使用Git bash在命令行模式下操作git
二、安装CopSSH
安装CopSSH之前先确保防火墙开启了SSH端口,这个虽然不影响CopSSH的安装,但是影响SSH访问,所以写在前面。
CopSSH是windows下的SSH服务器软件,下载地址baidu之,本文使用的是Copssh_410_Installerexe,
安装完成后,到控制面板中新建一个管理员账户root,用这个账户来共享SSH。然后你在账户管理中会看到之前的SvcCOPSSH账户。
将root用户添加到CopSSH用户中,为简单操作,允许使用密码认证方式
若是不允许密码认证,则需要使用公钥密钥方式认证,
三、CopSSH中使用GIT
现在已经安装GIT和CopSSH,接下来需要做的就是让CopSSH可以使用GIT的命令,这样不仅能够远程SSH管理GIT服务器,而且可以将GIT仓库通过SSH共享。具体的操作方法是将GIT的某些命令程序和动态链接库复制到CopSSH安装目录下即可。
l 将$ Git\libexec\git-core目录下的gitexe , git-receive-packexe , git-upload-archiveexe , git-upload-packexe复制到$ICW\bin目录下
l 将$Git\bin目录下的libiconv-2dll复制到$ICW\bin目录下
重启CopSSH即可
当资源有限,但是项目同时需要几个人协同开发,我们就需要配置一个简单的局域网内的git服务器,方便协同开发。
首先我们新建远端的git目录,目录名和本地仓库名一致,并且在目录下运行:
git init --bare
一个空的git仓库就建立好了。然后我们需要把本地的仓库和远端的关联起来。具体做法是,在本地git仓库的目录下执行:
git remote add origin ssh://用户名@ip/仓库路径
比如:git remote add origin ssh://android@1921683172/home/android/projects/gitserver/demoproject/。完成后,本地的提交,就可以push到远端啦。比如:
git push origin master
就可以把本地的master推送到远端。协同开发的同事可以通过如下命令获取远端的仓库
git clone ssh://android@1921683172/home/android/projects/gitserver/demoproject/
是不是很简单呢
ps:实际使用过程中发现了一个问题,即本机的ip地址不是静态的。如何解决这个问题呢?可以在每次ip改变以后,重置仓库的origin url:
git remote set-url origin {url}
``ssh-keygen -t rsa -C “您的邮箱地址”``
Your identification has been saved in /Users/you/ssh/id_rsa
# Your public key has been saved in /Users/you/ssh/id_rsapub
cd ~/ssh
查看公钥
cat id_rsapub
复制粘贴到码云上
到本地项目文件夹下,右键点击空白处,选择Git Bash Here,进入git窗口
一波操作后的页面
whereis git
yum install -y git
git version
eg: cd /home/www/test
git init
git config --global username "您的用户名称"
git config --global useremail "您的邮箱地址"
git remote add origin 自己的仓库地址
eg:git remote add origin https://giteecom//git
ssh -v git@giteecom
然后输入 yes
我拉取的是master分支
git pull origin master
如果拉文件的时候报这个错误,那么我们需要生成ssh公钥
ssh-keygen -t rsa -C"xxxxx@xxxxxcom"
查看当前公钥,并且将公钥添加到码云后台的ssh公钥中
git branch --set-upstream-to=origin/码云本地分支 服务器本地分支
eg:git branch --set-upstream-to=origin/master master
git config --global credentialhelper store
到此、配置完成
0条评论