1、在git官网上去下载git。http://git-scm.com/download/
安装好后,会有2个可执行文件,Git GUI和Git Bash,正如名称一样,一个是GUI工具,一个是命令行工具
2、当我们向服务器(比如Git@OSC,Github)提交代码时得有个用户名邮箱什么的,可以用如下命令进行设值
git config --global user.name
"Your Name"
git config --global user.email
"your@email.com"
下边开始git的操作
1.我们现切换到这个目录下(是和.classpath和.project同级的那个目录),右击然后选择Git Bash,这是就会弹出Git命令行,并且自动切换到当前所在目录,我们运行
1
|
git init
|
命令,可以看到会在该目录下生成一个.git的隐藏目录,这说明该目录以及归git进行管理了
2.输入
1
|
git add .
|
3.使用
1
|
git commit -m
"GitHelloWorld first commit"
|
命令,将代码提交到HEAD,注意此时还没有提交到服务器
4.我们该如何提交到服务器呢?对于熟悉SVN的用户,我们需要一个SVN仓库的地址还有所谓的用户名,密码,但是对于Git可能稍有不同
首先在Git Bash中输入:
1
|
ssh
-keygen -t rsa -C
"youremail@xxx.com"
|
然后打开http://git.oschina.net/keys页面,在该页面中添加公钥,标题可以随便填,公钥就是刚才复制过的内容,然后保存即可
我们在http://git.oschina.net/projects/new中添加一个新项目,比如GitHelloWolrd(这个名称后面会用到,这个步骤是必须的)
我们先来测试下是否联通:输入命令
1
|
ssh
-T git@git.oschina.net
|
1
|
Welcome to Git@OSC, whaon!
|
说明连接成功(密码也可以在http://git.oschina.net/profile/account进行设值)
下面就可以提交项目到git仓库中了,我们先输入一个不存在的
1
|
git remote add origin http:
//git
.oschina.net
/whaon/none
.git
|
然后执行
1
|
git push origin master
|
,会出现错误,因为在osc@git中根本不存在none这个项目
那我们应该输入
1
|
git remote add origin http:
//git
.oschina.net
/whaon/GitHelloWolrd
.git
|
但是会发现不能执行了,这时我们可以打开.git下的config文件,把如下内容删掉
1
2
3
|
[remote
"origin"
]
url = http:
//git
.oschina.net
/whaon/none
.git
fetch = +refs
/heads/
*:refs
/remotes/origin/
*
|
或者执行
1
|
git remote
rm
origin
|
然后再执行
1
2
|
git remote add origin http:
//git
.oschina.net
/whaon/GitHelloWolrd
.git
git push origin master
|
我们可以在自己的git中看到已经提交的项目了
以后的操作就是在本地修改->add->commit->push
当B程序员想参与到该项目中,该怎么办呢?
首先B程序员需要克隆远程版本库,使用如下命令
1
|
git clone http:
//git
.oschina.net
/csen66/weixin-client-for-java
.git
|
附录:
ls不能显示中文目录问题
解决办法:在git/etc/git-completion.bash中最后增加一行:
alias ls='ls --show-control-chars --color=auto'
我在实际的使用中,首先在gitoschina中创建了一个android的项目,然后会自动生成.gitignore 和LICENSE
在执行git push origin master 的时候提示
[rejected] master -> master (non-fast-forward)
我觉得这个问题主要原因是在gitoschina中已经有了文件,所以需要先合并之后再提交。
所以执行 git pull origin master会down下来文件,然后提示哪儿有冲突,修改完冲突然后
git add 之后git commit 提交自己仓库后,git push origin master 提交,成功。