文章26 | 阅读 12635 | 点赞0
本文记录一下如何在Xcode中使用Git作为源代码控制工具,以及如何将本地的Git仓库和远程Github上的仓库集成起来,虽然这章节和swift没有关系 ,但我还是放在这里。觉得学swift 这个也很关键。
目前版本的饿xcode(xcode 4 以上)都集成了源代码控制(Source Control)工具了,所以为新建的项目使用git来管理是很方便的。
我们只要在新建项目的时候勾选下图的checkbox
xcode就自动为我们创建了,git源代码管理。我们项目目录里应该就又.git文件夹了。如果没有。可以显示隐藏文件看看。
defaults write com.apple.finder AppleShowAllFiles TRUE
这时候 我们的Source Control
,就可以有很多操作了。
如果要给以前的项目添加git,先到项目目录
cd /Users/YOUR-USERNAME/Desktop/NoGitExample
然后
git init
这会初始化一个空的源,如果你在Finder里面查看或是输入ls命令,你会看到.git子目录已经被创建,很好,接下来输入:
git add .
这样,当前目录所有的内容就被添加到源里面去了,最后,输入以下命令:
git commit -m 'Initial commit’
这样就给项目加上git了 。对详细的git操作可以看在Xcode中使用Git进行源码控制
讲得很详细,很好。前面都是摘取它里面的片段 。
Github的理念源自于Git,二者并非完全一致的。但是从版本控制方面来说,差别不大。所以利用Xcode内置的Git管理功能即可与Github连接,而无需额外安装Github客户端。
我们可以使用SSH连接,使用非对称公钥认证方法。将xcode与github链接起来 。 当然不连接起来应该也可以 。不过要每次输入用户名密码麻烦 。
ssh-keygen -t dsa -f ~/.ssh/id_dsa
会提示你输入密码。两次
Your identification has been saved in /Users/xx/.ssh/id_dsa.
Your public key has been saved in /Users/xx/.ssh/id_dsa.pub.
然后提示你这两句 。我们去/Users/xx/.ssh/id_dsa.pub.
这个文件中找到public key
一长串字母
也可以直接使用这个命令查看 cat ~/.ssh/id_dsa.pub
然后进git官网登录后点击自己头像-->Settings->SSH keys->add Key
然后title
随便写一个 ,把那一长串字母 复制到key中 。
then , 在控制台测试.ssh dz$ ssh -T git@github.com
如果出现
Hi xxxxx! You've successfully authenticated, but GitHub does not provide shell access.
证明成功了 !
这里有可能出现这个错误Permission denied (publickey)
可以试试这个方法
你只要修改/etc/ssh/sshd-config文件,将其中的PermitRootLogin no修改为yes,PubkeyAuthentication yes修改为no,AuthorizedKeysFile .ssh/authorized_keys前面加上#屏蔽掉,PasswordAuthentication no修改为yes就可以了。
这个是网上的方法 ,/etc/sshd-config
我的文件是这样的结构。没有ssh
那个层级
然后就是为本地项目添加远程地址了 。
然后到下面这个界面
Name
根据自己喜好写吧 , Address
写github
的repositorie
直接在这里复制就行了。
然后就是push了 ,别说你找不到push!!Source Control
子菜单
在这里有可能报一个错(xcode 6 )
Could not read from remote repository.Please make sure you have the 。。。。。。。。
如果是 xcode 7 ,可能会报
The local repository is out of date.
Make sure all changes have been pulled from the remote repository and try again.
别担心 , 是因为你再github
新建的项目中有readme.md
在本地没有造成的,需要将它pull
下来
在终端,先进入到你项目目录,cd 。。。。。。
git pull命令的作用是,取回远程主机某个分支的更新,再与本地的指定分支合并
git pull <远程主机名> <远程分支名>:<本地分支名>
现在已经在项目当前目录了 。
git pull --rebase xxx master
xxx
是Add Remote
的Name``master
是你的分支名称 默认是master
我就遇到这么多问题 , 如果你遇到别的奇葩问题。自行解决。。
学习iOS,有他就够了,小码哥视频,传智、黑马、各种swift书籍
版权说明 : 本文为转载文章, 版权归原作者所有 版权申明
原文链接 : https://blog.csdn.net/u010586842/article/details/48153095
内容来源于网络,如有侵权,请联系作者删除!