2008年7月18日星期五

一步一步学git

哦,下面有些错误,您要参考的话,还是要认真看完才可以。这样才会成功的,因为我是一步一步写的,连同我犯的错误,都写了!
哦,这是我后来找到的一个视频http://www.youtube.com/watch?v=4XpnKHJAok8
首先您为自己注册个用户,在这里注册http://repo.or.cz/m/reguser.cgi
注意,Public SSH key(s):是你在$ssh-keygen
之后Generating public/private rsa key pair.
Enter file in which to save the key注意这里你一般是回车,当然也可以自己选择一个目录,但是不改变还是比较好找到的。
按照提示输入公匙密钥/密码,生成的公匙默认保存在 ~/.ssh/id_rsa.pub里,这里的就是往Public SSH key(s):里面填的。这样就注册好了。
然后您要到这里http://repo.or.cz/about.html有个create a project,为您自己注册个项目吧!认真的读这个页面的英文,不要急躁哦!
注册完了你将会看到Initiated mirroring. You will be notified about the result by mail.
如果失败的话,你将收到一封这样的邮件,[repo.or.cz] 项目名clone failed
repodir failed with error code 0
看来不是很好注册哦,估计没有找到方法而已,等我找到,写到这里。
如果申请成功就会得到一封[repo.or.cz]项目名 clone completed
Homepage URL:在这里,我起初是写的git://repo.or.cz/项目.py.git
最后改名为http://repo.or.cz/r/gocoso.git,才好了,
http://repo.or.cz/w/gocoso.git !进去后你会发现git他会为你生成的哦!
Mirror URL git://repo.or.cz/gocoso.git
http://repo.or.cz/r/gocoso.git
哦,各位喜欢的话,去看看。
哦接下来就该到应用了。
不错的链接,中文教程http://www.bitsun.com/documents/gittutorcn.htm
http://github.com/johnson/mubs/wikis/how-to-use-git-to-develop
http://wangcong.org/blog/?p=283
这个也可以,但是使得我出了很多的错误http://www.kongove.cn/blog/index.php?s=git
我一边学一边用一边在这里总结,一起学哦!记的看看您装了git了吗?装了就直接看!
我想为我申请的那个项目push一些东西
首先$ mkdir gocoso
$ cd gocoso/
$ git-init-db
$ git-add test.txt
$ git-commit -m "add test.txt"
$ git push git+ssh://用户名@repo.or.cz/srv/git/gocoso.git master:master
哦到这里就出错了。不应该添加:master,到后来才明白,正确的见下面。
Enter passphrase for key '/home/gaowei/.ssh/id_dsa':
error: dst refspec master does not match any existing ref on the remote and does not start with refs/.
fatal: The remote end hung up unexpectedly
error: failed to push some refs to 'git+ssh://Gaowei@repo.or.cz/srv/git/gocoso.git'
应该是还没有创建Push URL吧!而且它Warning: This is a mirrored repository, thus you cannot push into it. Changing the user set will have no practical effect.
哦,在直接注册ssh不行Software error:在考虑一下
原来如此啊!
Project gocoso successfuly set up.
The push URL for the project is git+ssh://repo.or.cz/srv/git/gocoso.git.
原来,你是在注册的时候选择上Push mode.而不是Mirror mode.但是,Repository URL你也一定要填写的,到这里基本就可以了!感觉自己犯了错,还在这里写。啊哈!
这是突然看到有了俩个,一个是http://repo.or.cz/w/gocoso.git
一个是http://repo.or.cz/r/gocoso.git/
哦,但是push的时候还是失败了,这又是为什么呢?
我重新来一遍吧
[gaowei@(none) gocoso]$ git-add test.txt
[gaowei@(none) gocoso]$ git-commit -m "add a test.txt"
# On branch master
nothing to commit (working directory clean)这里不是很明白。
看到下面和上面的有什么区别了吗?这就是错误的原因。
$ git push 接下一行git+ssh://Gaowei@repo.or.cz/srv/git/gocoso.git master
Enter passphrase for key '/home/gaowei/.ssh/id_dsa':
Counting objects: 3, done.
Writing objects: 100% (3/3), 219 bytes, done.
Total 3 (delta 0), reused 0 (delta 0)
To git+ssh://Gaowei@repo.or.cz/srv/git/gocoso.git
* [new branch] master -> master

2 条评论:

ICE 说...

你写的东西好难哦,我外语系的人一点都不董,呵呵,星期一我要在我们这的一辅导班教英语了,这是第一次教课~~

weiwei 说...

您是那位呢?一起努力!

time