iOS 在Xcode中使用Git进行版本管理--GitHub篇

上一篇文章讲解了在本地使用Xcode中的git进行版本控制,Git进行本地版本控制。这篇讲解如何使用Xcode将代码放在GitHub上(公开的),公司使用的privite的github不在本讨论范围内。

1.在Xcode中绑定github账号

Xcode菜单Xcode Preferences ,点击+号,选择GitHub,输入GitHub账号,GitHub账号注册看这篇

添加完账号后,可以看到有https和ssh,是两种绑定方式,一般使用https就行了,如果想使用ssh的话,选择ssh,然后选择new,Xcode会给你创建ssh keys公钥,三击选中以ssh-rsa开头的那一行,然后command+c复制,然后到GitHub账户上绑定,ssh绑定GitHub和Git

2.创建并关联远程仓库

步骤:建本地仓库->添加gitignore文件->创建远程仓库并将文件copy到远程仓库

gitignore文件是commit时你想忽略的类型的集合文件,也是可以减少冲突的一个很关键的设置gitignore文件要在本地仓库链接远程仓库之前创建,因为该文件只对从未追踪过的类型起作用,如果已经管理过改类型,再使用gitignore的话,会失效,因为当前类型的文件已经在版本控制之中。gitignore创建方法,cd到项目目录,touch .gitignore创建文件,然后添加自己想忽略的文件。我自己总结了Xcode和Object-C的gitignore文件和.DS_Store ,想用的可以下载我自己总结的ignore文件,下载后拖到项目工程中就行。此外,podfile和.lock文件建议加入版本控制中,不要忽视,理由请看cocoapods安装最下面的唐巧关于cocoapods的讲解。

也可以使用官方最新的gitignore文件,自己搜索对应语言进行添加。

defaults write com.apple.finder AppleShowAllFiles TRUE --显示隐藏文件
killall Finder --重启finder
defaults write com.apple.finder AppleShowAllFiles FALSE --隐藏隐藏文件

创建git本地仓库。创建好后如图


在工程名字上右击选择Creat "XXX(工程名字)"Remote on GitHub,在弹出菜单中,Reposition Name 中输入仓库名字,点击creat,这样,当前工程的远程仓库就创建成功了。登录github,进入个人中心可以看到当前工程。

PS:.gitignore忽略文件失效问题

如果gitignore文件是后来添加的话,有些文件我们虽然添加在ignore文件中了,但是每次commit提交时仍然会commit,例如:

Pods/.DS_Store文件和.DS_Store文件和

RemoteGitDemo.xcworkspace/xcuserdata/pxx.xcuserdatad/UserInterfaceState.xcuserstate文件。

针对这类文件,其实是工程运行中产生的文件,不是必须的工程文件,可以将其删除,删除后gitignore文件就会起作用了,再次commit时就会自动忽略这些文件了,方法如下,在终端中cd到工程目录中,输入git status-查看当前改变

modified:   .DS_Store

modified:   RemoteGitDemo.xcworkspace/xcuserdata/pxx.xcuserdatad/UserInterfaceState.xcuserstate

提示有两个改变未保存到仓库,输入 git rm -f .DS_Store,这句话的意思是删除.DS_Store文件,然后git  commit -m "delete .DS_Store"这句话意思是对本次删除进行commit到本地仓库,然后输入git push将其同步到远程仓库,这样.DS_Store文件被删除(注意,只有一些项目运行中产生的文件,不需要加进版本控制中的才能用这种方法),gitignore文件也会生效了。下一次commit时就不会出现.DS_Store。对第二个文件做相同的处理后,下次commit时也不会出现。

PS:如果是多人协作的话,写完代码每次先commit保存到本地仓库,然后再pull拉下别人的代码,这样你就有一份最新的代码了,再push提交自己的修改到远程仓库。

如果要使用命令行进行Git版本控制,看这个利用终端使用Git

参考博客

猜你喜欢

转载自blog.csdn.net/yingbi2014/article/details/79818814
今日推荐