在服务器端使用 Git 创建源代码仓库

Posted 专注it

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在服务器端使用 Git 创建源代码仓库相关的知识,希望对你有一定的参考价值。

下面简单讲述在服务器搭建 Git 仓库的过程。

安装 Git 程序

Git 是分布式的,即程序不区分服务端和客户端,大部分 Linux 发行版的官方源里都有它,比如在 Archlinux 里安装 Git:

$ sudo pacman -S git

不过有些发行版却是没有的,比如 CentOS,需要添加 EPEL 源才有,不过即使使用 EPEL 源,里面的版本也与当前主流的版本相差一大截,这时最好的方法是通过源代码安装。下面是在 CentOS 5 添加 EPEL 和安装 Git 的命令。

$ sudo rpm -Uvh http://download.Fedora.RedHat.com/pub/epel/5/i386/epel-release-5-4.noarch.rpm
$ sudo yum install git

创建 Git 源码仓库

为了简化起见,可以采用如下方法创建 Git 仓库:
1、创建一个专用用户。
2、在这个用户的 home 目录下面创建 Git 空白仓库。
3、把所有开发者计算机的 SSH key 添加到这个用户的 ~/.ssh/authorized_keys 文件当中,这样这些开发者就有读写 Git 仓库的权限,而其他用户没有任何权限。

下面演示这个过程:

$ sudo useradd git #创建一个名字为git的用户
$ sudo passwd git #更改该用户的密码
$ su - git #切换到该帐号
$ mkdir project1.git #创建一个项目源码仓库目录
$ cd project1.git
$ git --bare init #初始化一个空白仓库

下面是在开发者计算机上执行的:

$ ssh-keygen # 生成 ssh key
$ ssh-copy-id [email protected] # 将上一步生成的 ssh pub key id 复制到服务器上。

开发者使用 Git 访问这个仓库时,实际上是通过 SSH 来传输文件的,所以这个仓库的地址跟 SSH 定位远程文件是一样的,比如访问 project1.git 的地址是:

[email protected]:project1.git

那么克隆此仓库的命令为:

git clone [email protected]:project1.git


客户端

git init

echo "first file" >> README

cat README

git add .

git commit -a -m "add README"

git remote add origin ssh://[email protected]/~/workspace/code_celloct/project1.git

git push origin master

git clone [email protected]:/home/git/project1.git

 

如果 project1.git 位于 ~git/repositories/project1.git,则上面的地址相应改为
[email protected]:repositories/project1.git

以上是关于在服务器端使用 Git 创建源代码仓库的主要内容,如果未能解决你的问题,请参考以下文章

window下如何使用Git上传代码到github远程服务器上(转)

如何从git上传代码到github

完美解决--用VS中的Git做代码管理器,与他人共享代码

git服务器搭建post-receive 钩子部署服务端代码

eclipse创建git本地仓库,并将本地仓库更新到远端git服务器

在服务器上搭建自己的git私人仓库