gpt4 book ai didi

swift详解之二十--------在xcode中使用git管理源代码,将代码提交到github

转载 作者:知者 更新时间:2024-03-13 04:54:50 37 4
gpt4 key购买 nike

在xcode中使用git管理源代码,将代码提交到github

本文记录一下如何在Xcode中使用Git作为源代码控制工具,以及如何将本地的Git仓库和远程Github上的仓库集成起来,虽然这章节和swift没有关系 ,但我还是放在这里。觉得学swift 这个也很关键。

1、xcode中使用git源码控制

目前版本的饿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进行源码控制
讲得很详细,很好。前面都是摘取它里面的片段 。

2、. 如何将Xcode的本地Git仓库与Github的远程仓库集成

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根据自己喜好写吧 , Addressgithubrepositorie

直接在这里复制就行了。
然后就是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

xxxAdd RemoteName``master 是你的分支名称 默认是master

我就遇到这么多问题 , 如果你遇到别的奇葩问题。自行解决。。
学习iOS,有他就够了,小码哥视频,传智、黑马、各种swift书籍

37 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com