假设你已经在本地搭建了一个git repository,现在需要把它上传到dreamhost主机上提供给别人pull,并方便自己在不同电脑上更新使用。这是我目前用的方法,当然首先你得先知道以下东西(以下内容均为假设,表胡猜我的帐号,密码了:D)
- DH主机名: montty (假设)
- DH用户名: hades (需开通shell操作权限)
- 本地Git repo: /home/hades/software
1.在DH主机上安装Git
ssh登陆DH主机,在主目录下进行以下操作安装Git
$ mkdir src && cd src/
$ wget http://kernel.org/pub/software/scm/git/git-1.5.4.4.tar.gz
$ tar xzvf git-1.5.4.4.tar.gz
$ cd git-1.5.4.4
$ ./configure --prefix=/home/hades/ NO_CURL=1 NO_MMAP=1
$ make && make install
然后把生成的/home/hades/bin添加到系统环境中
$ echo "export PATH=/home/hades/bin:$PATH" >> ~/.bashrc
2.从本地拷贝一个空(bare)的repo出来
$ cd /home/hades
$ git-clone --bare software software.git
$ cd software.git/
$ git --bare update-server-info
$ chmod a+x hooks/post-update
$ touch git-daemon-export-ok
3.把这个software.git
上传到DH主机上
$ scp -r software.git hades@montty.dreamhost.com:/example.com/path/software.git
4.回到本地的原始Git repo目录,提交改变到DH主机的repo上
$ git-push ssh://hades@montty.dreamhost.com/home/hades/example.com/path/software.git
如果你嫌反复输入这么长的操作命令的话
$ git remote add git-software \
ssh://hades@montty.dreamhost.com/home/hades/example.com/path/software.git
以后你只需要输入git-push git-software
就行了
5.查看DH主机的repo
$ git-clone http://example.com/path/software.git
确认下DH主机上的repo是否已成功导入本地repo的内容及更新。
参考:
echo “export PATH=/home/hades/bin:$PATH” << ~/.bashrc
箭头反了吧?
啊哦,的确,失误失误,转成HTML characters时没注意。
之前在一个社区用过subversation来让大家进行代码的修改,春节从学校回家里没拿机器回家,就把一些文档摆上svn里,在家里svn co下来,感觉也不错。但对个人来说,我还没发现版本控制对我有大帮助。
现在这linus的这个git,也没去google它的好处,我猜google回来的也是对一些团队协作的帮助等。
那么P记你能说说git的好处,对你的帮助么?
对个人而言,版本控制确实用处不大,尤其是这种小作坊式的东西,我也是刚开始接触git和svn,linus所极力鼓吹的distributed nature对我来说是没多大概念。
我用git是因为它轻巧,不像svn就连个
svn log
也要等个几秒响应时间。你可以看下Linus在Google Talk的这个Tech Talk: Linus Torvalds on git视频。
不过其实svn也蛮好用的,尤其是有了Google Code,把repository交给它托管相当的方便啊。
不过google code好像有一个问题,就是他存放的代码是open source是吧。对一些人的有一些代码还是不想存放在上面。
我对Git的兴趣其实最大是在Linus上面,毕竟他可是个活招牌,技术有保证。
btw:我想和你交换友情链接,可以么?(不愿意也没所谓,毕竟你blogroll大部分是现实生活中的密友,我明白的。)
我最近就开始用Google Code了,反正我没啥需要保密的,Google Code的管理很方便,又有集成的wiki,特别喜欢它生成的高亮diff,比对起来很方便。
Linus就是过于自信了啊,一边吹自己的产品一边损别人的东西,他把用cvs的人说成脑子有问题的。
我不太喜欢交换链接这个说法,怎么看起来都像是为了拉高PR的营销手段,至于说增加访问量…留言是刺激别人点击你的站的最好方式 :D
当然,我这就把你的链接加上,我不喜欢加的是那种完全没有共同话题的人的链接,还有就是Q-zone的一律不加。
之前Linus讨论C和C++就可见他喜欢损别人了。
“关于交换链接”这个,第一时间我描述我的想法时,我是想用“你能在你的blogroll里添加我为好友么“,但这话语又好像有点单向,不能突现双方交互,所以最后决定了用网上的“交换链接”一词。
我对Q-ZONE的印象就是在我身边的朋友看q-zone的时候的回复都是随便的附和,没啥意思。Q-ZONE这环境的文章也比较言情的呢。