来自:http://www.bixuda.com/2010/07/27/use-git-at-godaddy-hosting/
前段日子,放弃了自己家里的山寨服务器时代,在godaddy买了一个豪华版的hosting,速度还可以,配置也还可以,价格和国内相比,也算不错,具体可以看介绍【DELUXE PLAN 】,我就不一一描述了:http://www.godaddy.com/hosting/web-hosting.aspx?ci=8971#details 什么都搞好了,也放了很多subdomain和Multiple Web Sites,呵呵,150G的空间,够用了,但是由于月流量的限制1500GB,正常访问也够了,所以不能提供下载服务,要不然超过了他的范围,价格还是挺贵的,哈哈,呃,不废话了,不知不觉居然废话了那么多……
svn(subversion)和git怎么在godaddy的里面配置呢?
首先我看到了 http://erikfantasia.wordpress.com/2009/03/18/subversion-on-godaddy-shared-hosting/ 这篇文章介绍了如何利用CollbNet RedHat binary将svn的客户端配置在godaddy,哈哈,顺手写了个sh,用于启动svn,
我是将内容放在了svn_client目录里面,可以根据自己的条件进行修改。
[cc lang="bash"]
#!/bin/sh
export PATH=$PATH:$HOME/svn_client/bin
export LD_LIBRARY_PATH=$HOME/svn_client/lib
svn $@
[/cc]
OK,可以在godaddy里面使用svn的客户端了,这里不能使用svn的服务器端,哈哈,失败~~,不过可以利用客户端做一个svn的同步版本发布的定时任务,还是有存在的价值的,虽然不能自己做版本的管理服务器,还是有些伤心。
根据svn的经验,我想到了反正是godaddy的也是centos系统,我能否可以通过拷贝其他centos的git到这个系统里面来使用呢?
马上行动
[cc lang="bash"]
> which git
/usr/local/bin/git
> git --exec-path
/usr/local/libexec/git-core
[/cc]
好,将/usr/local/bin/git*和/usr/local/libexec/git-core全部打包,乾坤大挪移到godaddy的服务器的用户目录下,然后再写一个git脚本先加载环境变量,然后执行git
如:
[cc lang="bash"]
#!/bin/sh
export PATH=$PATH:~/bin
export LD_LIBRARY_PATH=~/lib
export GIT_EXEC_PATH=~/libexec/git-core
git $@
[/cc]
自此大功算是告成了!~
马上传上viewgit试试,更改viewgit/inc/config.php的$conf['git'] = '/home/content/xx/xxxxxx/git' 然后去viewgit/inc/localconfig.php添加一个repo,运行,成功输出git版本信息,成功!
git clone 也一样,哈哈,git就是比svn爽的地方是他只要是客户端就可以做服务器,哈哈,所以这样配置成功后,立马就是一个git的版本服务器了!非常不错!今后开发的版本管理问题也解决了~
godaddy果然是一个不错的选择!
----- PS ------
后面忘记增加git的使用说明了,对不起大家,这里补充下:
[cc lang="bash"]
#克隆一个git版本库出来,特别注意要增加--upload-pack参数
$ git clone --upload-pack="~/bin/git-upload-pack" ssh://username@hostname.com/~/r
epos/test.git
$ git remote add godaddy ssh://username@hostname.com/~/repos/test.git #便于记忆
$ git add . # 增加库文件
$ git commit -a # 提交
#提交至服务器,特别注意要增加--receive-pack参数
$ git push --receive-pack="~/bin/git-receive-pack" godaddy master
[/cc]
说明:我整理了下昨天提到的目录,只需要对*-pack参数做相应的修改即可。
还有就是注意,用~ 代替 $HOME,否则会有问题!
------- PS :2010-07-31 19:38 --------
这里我推荐使用 http://code.google.com/p/msysgit/ 做为windows 下的 git的软件
我写了一个bash[ggit]放在C:\Program Files\Git\bin里面,就可以直接用ggit来提交了到godaddy了,方便嵌入其他的没有提供额外参数增加能力的编辑器等,不过每次都要输入密码,哈哈。
[cc lang='bash']
#!/bin/sh
if [ "$1"x = "clone"x ]; then
git $1 --upload-pack="~/bin/git-upload-pack" ssh://xxxx@xxxx.com/~/repos/$2.git $3
elif [ "$1"x = "pull"x ]; then
git $@ --upload-pack="~/bin/git-upload-pack"
elif [ "$1"x = "push"x ]; then
git $@ --receive-pack="~/bin/git-receive-pack"
else
git "$@"
fi
[/cc]