本文的以下内容较旧,常常会出现第一次配置成功可以用,但关机重启后就一直提示“username or password”不正确的bug,所以建议弃ssh方式转向https方式,更加稳定。传送门:点我

===================================================

Xcode 已经集成了git,建立新项目时钩选使用git,然后按照下面步骤让Xcode和git@osc 建立连接。

第一步:成生SSH密钥

打开终端命令工具,输入命令:ssh-keygen -t rsa -C "diaosi@gmail.com"

注意ssh-keygen没有空格。屏幕输出:

Generating public/private rsa key pair.

Enter file in which to save the key (/Users/diaosi/.ssh/id_rsa):diaosi

在上方输入生成的密钥文件名,如diaosi,屏幕输出:

Enter passphrase (empty for no passphrase): 输入密码

Enter same passphrase again: 确认密码

Your identification has been saved in diaosi.

Your public key has been saved in diaosi.pub.

The key fingerprint is:

25:fd:01:00:89:98:49:bf:2e:ac:32:2e:d2:5d:bf:98 diaosi@gmail.com

The key's randomart image is:

+--[ RSA 2048]----+

| ..+ ..o...      |

|  +.. .  . .     |

|    .   . o .    |

|     .   o . .   |

|    .   S   .    |

| . .  .          |

| .o... .         |

|=....  o.        |

|*o    E ..       |

+-----------------+

屏幕提示生成密钥文件成功,保存在/Users/diaosi文件夹下。

第二步:把diaosi.pub中的内容加入git@osc 的SSH密钥中

第三步:添加SSH并连接

输入命令:ssh-add ~/diaosi

~/diaosi 是刚刚生成的密钥文件路径,屏幕输出:

Enter passphrase for /Users/diaosi/diaosi:输入密码

Identity added: /Users/diaosi /diaosi (/Users/diaosi /diaosi)

输入命令ssh -T git@git.oschina.net,屏幕输出:

The authenticity of host 'git.oschina.net (58.215.179.44)' can't be established.

RSA key fingerprint is 14:b8:b8:0b:c2:b2:5e:ae:f2:21:f8:18:4d:3a:be:fc.

Are you sure you want to continue connecting (yes/no)? yes(输入yes),屏幕输出:

Warning: Permanently added 'git.oschina.net,58.215.179.44' (RSA) to the list of known hosts.

Welcome to Git@OSC , 老左!

第四步:设置个人信息

输入命令:

git config –global user.name “diaosi”  (有两个-号)

git config –global user.email diaosi@gmail.com

第五步:设置项目

获取git@osc 上的项目路径。

输入命令:cd 项目文件夹

输入命令:git remote add origin git@git.oschina.net:heqings/fitness.git

输入命令:git pull -u origin master //从git@osc 上拉取项目

输入命令:git push -u origin master //提交项目

第六步:Xcode集成

在Xcode中,提交代码到git@osc 前需提交到本地git,否则Xcode会提示你。

在项目或文件上选择文件提交到本地,这里需要注意的是,工程用户数据不要提交到git,因它实时在变化,本地和远程都不要提交,否则Push时提示有文件未提交。

以上文件不要提交。

把项目提交到本地:

File->Source Control->Commit

把项目提交到git@osc :

File->Source Control->Push

点击Push按钮即可。

=====================

若xcode工程在当时新建的时候没有勾选git也没事,几句话就可以在现有的工程中建立git管理:

cd到工程目录:

git init

git add .

git commit -m ‘initial’

====================

移除现有的git控制:

rm -fr .git

====================

git经常遇到的错误:

pull is not possible because you have unmerged files

解决方法见:http://halolk.blog.51cto.com/6916369/1304701

我的解决方法是,git commit -a

====================

oschina & xcode:里面的所有username都是指邮箱中@前的字符串,比如ABC@163.com中的ABC

【转】Xcode托管代码到oschina中的教程的更多相关文章

  1. (翻译)开始iOS 7中自动布局教程(二)

    这篇教程的前半部分被翻译出来很久了,我也是通过这个教程学会的IOS自动布局.但是后半部分(即本篇)一直未有翻译,正好最近跳坑翻译,就寻来这篇教程,进行翻译.前半部分已经转载至本博客,后半部分即本篇.学 ...

  2. (转载)开始iOS 7中自动布局教程(一)

    这篇教程的前半部分被翻译出来很久了,我也是通过这个教程学会的IOS自动布局.但是后半部分(即本篇)一直未有翻译,正好最近跳坑翻译,就寻来这篇教程,进行翻译.前半部分已经转载至本博客,后半部分即本篇.学 ...

  3. 【转】开始iOS 7中自动布局教程(一)

    原文网址:http://www.cocoachina.com/industry/20131203/7462.html 原文:Beginning Auto Layout Tutorial in iOS ...

  4. 开始iOS 7中自动布局教程(一)

    本文转载至 http://www.cocoachina.com/industry/20131203/7462.html 到目前为止,如果你的设计相当的复杂,那么你必须编写大量的代码来适应这样的布局.你 ...

  5. python操作txt文件中数据教程[4]-python去掉txt文件行尾换行

    python操作txt文件中数据教程[4]-python去掉txt文件行尾换行 觉得有用的话,欢迎一起讨论相互学习~Follow Me 参考文章 python操作txt文件中数据教程[1]-使用pyt ...

  6. python操作txt文件中数据教程[3]-python读取文件夹中所有txt文件并将数据转为csv文件

    python操作txt文件中数据教程[3]-python读取文件夹中所有txt文件并将数据转为csv文件 觉得有用的话,欢迎一起讨论相互学习~Follow Me 参考文献 python操作txt文件中 ...

  7. python操作txt文件中数据教程[2]-python提取txt文件

    python操作txt文件中数据教程[2]-python提取txt文件中的行列元素 觉得有用的话,欢迎一起讨论相互学习~Follow Me 原始txt文件 程序实现后结果-将txt中元素提取并保存在c ...

  8. python操作txt文件中数据教程[1]-使用python读写txt文件

    python操作txt文件中数据教程[1]-使用python读写txt文件 觉得有用的话,欢迎一起讨论相互学习~Follow Me 原始txt文件 程序实现后结果 程序实现 filename = '. ...

  9. Xcode 6.4项目中的常见文件(info.plist)

    Xcode 6.4项目中的常见文件(info.plist) 代码中获取 info.plist[NSBundle mainBundle] infoDictionary]; Bundle display ...

随机推荐

  1. 找出链表中倒数第 k 个结点

    /* 题目:输入一个单向链表,输出该链表中倒数第 k 个结点.链表的倒数第 0 个结点为链表 的尾指针. 链表结点定义如下: struct node { int data; struct node * ...

  2. UBUNTU上的GIT SERVER

    Git是一个开源的版本控制系统,由Linus Torvalds主导,用于支持Linux内核开发.每一个Git工作目录,都是一个完整的代码库,包含所有的提交历史.有能力跟踪所有的代码版本,而不会去依赖于 ...

  3. Office Web Apps Server 概述

    Office Web Apps Server 是新的 Office 服务器产品,它提供 Word.PowerPoint.Excel 和 OneNote 的基于浏览器的版本.单个 Office Web ...

  4. gulp-clean----gulp系列(五)

    前面说过,当css,img,js出现删除操作的时候,虽然watch会监听,但是并不会删除相应文件. 现在实现clean任务,执行任务前先删除一次build目录. 先配置JS任务,设置删除目录. 在系列 ...

  5. Socket.IO – 基于 WebSocket 构建跨浏览器的实时应用

     Socket.IO 是一个功能非常强大的框架,能够帮助你构建基于 WebSocket 的跨浏览器的实时应用.支持主流浏览器,多种平台,多种传输模式,还可以集合 Exppress 框架构建各种功能复杂 ...

  6. 查找表或其他对象在某个Server上的存在

    EXEC sp_MSforeachdb 'use ? ;  IF EXISTS(SELECT top 1 1 FROM sys.syscomments WHERE text LIKE ''%test% ...

  7. JavaScript 按值传递 & 按引用传递

    (1)值的比较--引用的比较 首先,原始值的比较是值的比较:只有在它们值相等的时候它们才相等 比如简单的 var a1 = 10; var a2 = 10; console.log(a1 === a2 ...

  8. Winform开发框架之客户关系管理系统(CRM)的开发总结系列4-Tab控件页面的动态加载

    在前面介绍的几篇关于CRM系统的开发随笔中,里面都整合了多个页面的功能,包括多文档界面,以及客户相关信息的页面展示,这个模块就是利用DevExpress控件的XtraTabPage控件的动态加载实现的 ...

  9. 【C#】OOP之继承那点事

    前言: 继承这点事,说多不多,说少不少,这里只描述了一些我认为的基础篇,望各位大神指教.本节参照了C#高级编程和Think in java对继承的描述,我个人认为OOP只是思想,故看明白一个就说通的, ...

  10. C#-Windows服務以LocalSystem賬戶安裝的話無法獲取我的文檔路徑

    如圖,如果Window服務以上圖 Account安裝運行,則無法獲取到 以下路徑: System.Environment.GetFolderPath(Environment.SpecialFolder ...