windows下安装git & 在git@OSC上推送代码

第一部分 windows下安装git

1、下载最新版本的git:直接百度“git”,如图所示,点击立即下载。

也可以直接在官网下载最新版本的git:http://www.git-scm.com/download/win(该链接是针对windows系统的下载)

可以根据与自己电脑的情况选择安装包下载

2、下载完成后,双击压缩包。

3、在弹出的安装界面点击“Next”。

4、一路使用默认设置,选择“Next”。

 安装过程中,询问是否修改环境变量,选择“Use Git Bash Only”. 即只在msysGit提供的Shell

(NOTE: 这个步骤最好选择第二项“Use Git from the Windows Command Prompt”, 这样在Windows的命令行cmd中也可以运行git命令了。这样会对以后的一些操作带来方便,

一路安装即可。

5、默认安装后,打开命令行模式,输入“git”,即可使用。

 第二部分 在git@OSC上推送代码

1、首先,我们向服务器Git@OSC提交代码时,需要用户名和邮箱信息,需要使用如下命令进行配置

git config --global user.name "你的用户名" 
git config --global user.email "你的邮箱地址"

这些配置都会存放在用户所在目录下的.gitconfig文件中,比如(C:\Users\Administrator\.gitconfig,这个要看实际的路径,有可能在C:\Windows\System32\config\systemprofile目录下),用Editplus打开可以查看文件内容。

2、配置完成后,如何eclipse工程HelloWord通过git提交到git@OSC上呢?

(1)首先在eclipse中创建HelloWord工程

(2)我们现切换到这个目录下(是和.classpath和.project同级的那个目录),右击然后选择Git Bash,这是就会弹出Git命令行,并且自动切换到当前所在目录。

(3)我们运行: git init

可以看到会在该目录下生成一个.git的隐藏目录,这说明该目录以及归git进行管理了

输入:   git add .

把该目录下的所有文件全部提交到缓冲区

使用:   git commit -m "HelloWorld second commit"  

命令,将代码提交到HEAD,注意此时还没有提交到服务器(这是我第二次提交,之前试着做了一遍)

(4)我们该如何提交到服务器呢?

首先在Git Bash中输入:

ssh-keygen -t rsa -C "youremail@xxx.com"

然后一路回车,这个会在当前用户文件夹下,生成.ssh 文件夹,里边有个 id_rsa.pub文件,用记事本打开,复制其中的全部内容。

 

然后打开http://git.oschina.net/keys页面,在该页面中添加公钥,标题可以随便填,公钥就是刚才复制过的内容,然后保存即可

我们在http://git.oschina.net/projects/new中添加一个新项目,比如HelloWolrd(这个名称后面会用到,这个步骤是必须的)

我们先来测试下是否联通:输入命令

ssh -T git@git.oschina.net

然后会通知你输入用户名/密码,该密码就是你的osc账户密码,然后会提示你输入yes/no,输入yes后回车,显示出

Welcome to Git@OSC, 你的用户名!

说明连接成功(密码也可以在http://git.oschina.net/profile/account进行设值)

因为我是第二次登录,所以是直接登录的。

(5)下面就可以提交项目到git仓库中了,我们先输入一个不存在的

git remote add origin http://git.oschina.net/你的用户名/none.git

然后执行

git push origin master

会出现错误,因为在osc@git中根本不存在none这个项目

那我们应该输入

git remote add origin http://git.oschina.net/你的用户名/HelloWolrd.git

但是会发现不能执行了,这时我们可以打开.git下的config文件,把如下内容删掉

[remote "origin"]
    url = http://git.oschina.net/whaon/none.git
    fetch = +refs/heads/*:refs/remotes/origin/*

或者执行

git remote rm origin

然后再执行

git remote add origin http://git.oschina.net/你的用户名/HelloWolrd.git
git push origin master

就可以了,这时项目已经被提交到osc@git上了

注意:

问题一:fetch-first

解决:它的意思是说本地和服务器上的代码冲突了,类似svn上的,所以需要先pull,再push。(可能是我之前已经提交过一次了)

先 git pull origin master
再 git push origin master

问题二:non-first-forward

解决:git仓库中已经有一部分代码,所以它不允许你直接把你的代码覆盖上去。

这里我使用强推的方式,因为前后两次的代码是完全一样的

强推的语法:

git push -f

最终,我们可以在自己的git中看到已经提交的项目了。

参考资料

1、Git错误non-fast-forward后的冲突解决:http://blog.csdn.net/chain2012/article/details/7476493 
2、Git初体验:http://my.oschina.net/dxqr/blog/134811?p=2#comments

 

posted on 2016-01-29 18:35  宋宋^_^  阅读(1683)  评论(7编辑  收藏  举报