git本地创建 push仓库_将在本地创建的Git仓库push到Git@OSC

本人小白一个,最近刚接触Git,发现挺好用的,而且OSC还提供了免费的托管仓库,打算把自己电脑上的代码和在公司无聊时写的代码给同步到OSC上,结果总是出现各种失败。网上搜索的解决方案大部分是先在Git@OSC上创建项目,然后再clone到本地,而我是想把已经在本地创建好的仓库直接push到Git@OSC上。摸索半天终于解决,分享一下我的方式。

实用范围:已经在本地通过 git init 命令创建了本地仓库,然后想把本地仓库push到Git@OSC上。不对Git的安装及使用进行详细说明,Git详细使用请参考http://git.oschina.net/progit/(我的所有操作是在linux上进行的,windows上通过msysgit应该也能完成)

第一步:创建本地仓库用于push到远处仓库Git@OSC上,如果已经有本地仓库的可以忽略此步;

1.随意创建一个本地项目StudyGit,用于测试:

# mkdir -p StudyGit/src/com/study/lynn

#mkdir -p StudyGit/src/com/study/zeng

#cd ./StudyGit

#vim ReadMe.md

#cd ./StudyGit/src/com/study/lynn

#vim FirstActivity.java

#cd ./StudyGit/src/com/study/zeng

#vim SecondActivity.java

以上操作创建了一个目录结构如下的项目:(我是在root账号的家目录下创建了一个StudyGit项目)

2.为StudyGit项目创建本地仓库,进入StudyGit项目根目录,在根目录下执行如下操作:

# git init//此时只是根据StudyGit项目目录结构做了部分初始工作,StudyGit项目的文件还没被最终及提交到本地仓库。

3.将StudyGit项目中的文件提交到本地仓库:

# git add src/

# git add ReadMe.md//将src目录下的文件和Readme.md文件加入暂存区

# git commit -a -m "初次提交"//此时本地仓库中已经保存有StudyGit项目的记录了,接下来可以将本地仓库中内容push到远程仓库了。

第二步:为当前用户(我的是root用户)创建ssh连接公钥,并将公钥添加在添加在个人的Git@OSC账号下,用于向远程服务器push时的验证

1.进入root的家目录(/root/.ssh)中会有一个 .ssh 的隐藏目录(安装Git后在每个账号的用户目录下都会有这个文件夹,如果是windors下的msysgit的话,一般在C:\Users\用户名\.ssh下),里面有两个文件 id_rsa 和 id_rsa.pub ,其中id_rsa.pub中的内容就是我们要的公钥;如果没有这两个文件,或者觉得不保险可以直接删了通过下面命令重新创建:

# ssh-keygen    //执行该命令后,途中还需要按三次回车,后两次是输入密码,可以随便输两次要一致,为了方便可以不输入,直接回车;

2.进入id_rsa.pub文件,将其中全部内容复制添加在你个人Git@OSC账号下的公钥中保存(保存时需要输入你的账户密码);

3.验证下公钥是否添加成功:

#ssh -T git@git.oschina.net           //中途会询问是否连接,输入yes回车,Welcome 表示已经连接成功

第三步:为StudyGit项目添加远程仓库,并将本地仓库中代码push到远程仓库:

1.在Git@OSC上创建一个StudyGit的项目仓库作为远程仓库使用,不一定要叫StudyGit其他名字应该也可以(没试过);

2.进入StudyGit的根目录,为本项目添加远程仓库(注意一定要进入到StudyGit项目的目录内,不一定要是根目录,子目录也可以):

# git remote add osc git@git.oschina.net:flan/StudyGit.git        //1."osc"是远程仓库地址的别名(不是远程仓库上项目的名字)可以随便起,默认是origin;2.git@git.oschina.net:flan/StudyGit.git注意冒号后面的“flan”,是osc为各个账号分配的路径,我的远程仓库路径是http://git.oschina.net/flan/StudyGit.git,所以冒号后是flan,不同账号会不同请注意更改;3.StudyGit.git是刚刚在git.oschina.net上创建的远程仓库;

# git remote -v         //可以查看添加的远程仓库

3.将本地仓库push到Git@OSC上的远程仓库:

# git push osc master//"osc" 是刚刚创建的远程仓库名,“master”是本地仓库的主干分支(目前也只有这一个分支,没有其他分支)

现在,已经完成将本地仓库push到Git@OSC上,如果对其中用到的git命令不明白的可以参看http://git.oschina.net/progit/ 。第一次写博客有什么错误欢迎指出!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值