git(四)——远程仓库( 私有git服务器 )
1. 服务器搭建
远程仓库实际上和本地仓库没啥不同,纯粹为了7x24小时开机并交换大家的修改。GitHub就是一个免费托管开源代码的远程仓库。但是对于某些视源代码如生命的商业公司来说,既不想公开源代码,又舍不得给GitHub交保护费,那就只能自己搭建一台Git服务器作为私有仓库使用。
搭建Git服务器需要准备一台运行Linux的机器,在此我们使用Debian 。以下为安装步骤:
① 安装 Git
服务器端安装Git:
# apt-get install git
(若安装的是yum,则使用命令:#yum install -y git)
安装完后,查看 Git 版本
root@iZ2zei740hosdw7tsak26bZ:~# git --version
git version 2.1.4
② 服务器端创建 git 用户,用来管理 Git 服务,并为 git 用户设置密码
root@iZ2zei740hosdw7tsak26bZ:~# id git
id: git:无此用户
root@iZ2zei740hosdw7tsak26bZ:~# useradd git
root@iZ2zei740hosdw7tsak26bZ:~# passwd git
Enter new UNIX password:
id [用户名]:查看系统中有没有该用户 (上面的三个 "git" 都是指用户名,而非Git软件)
useradd [用户名]:添加一个用户
passwd [用户名]:给指定用户设置密码,之后回车便可设定密码
③ 服务器端创建 Git 仓库
设置 /home/pan/git/gitrepo为 Git 仓库
然后把 Git 仓库的 owner 修改为 git (下面标色部分)
root@iZ2zei740hosdw7tsak26bZ:~# mkdir -p /home/pan/git/gitrepo
root@iZ2zei740hosdw7tsak26bZ:~# git init --bare /home/pan/git/gitrepo
Initialized empty Git repository in /home/pan/git/gitrepo
root@iZ2zei740hosdw7tsak26bZ:~# cd /home/pan/git
root@iZ2zei740hosdw7tsak26bZ:/home/pan/git# chown -R git gitrepo/
root@iZ2zei740hosdw7tsak26bZ:/home/pan/git# cd gitrepo/
root@iZ2zei740hosdw7tsak26bZ:/home/pan/git/gitrepo# git config --bool core.bare true
git init --bare /home/pan/git/gitrepo : 初始化为一个不带有项目文件的私有仓库,注意:如果不使用“--bare”参数,初始化仓库后,提交master分支时报错。这是由于git默认拒绝了push操作,需要.git/config添加如下代码:
[receive]
denyCurrentBranch = ignore
标色部位中的 git 即为上面定义的 用户git
git config --bool core.bare true : 把版本库的核心属性修改成bare的类型;
在创建好的仓库下,我们可以看到以下内容:
2. 将本地仓库内容同步到私有服务器
这时,我们若要将本地仓库内容同步到私有服务器上,只需要做以下配置操作即可:
3. 把私有服务器上的仓库拷贝到本地
同样,若想把私有服务器上的仓库拷贝到本地,可以这样做:
补充:
删除软件包,并删除相应的配置文件:(apt-get autoremove softname将依赖的软件包卸载掉,这样就可以完全卸载一个软件)
apt-get remove --purge softname