iOS 本地新项目上传git仓库,并使用sourceTree管理

此文记录的场景描述:

iOS前期开发时,在本地创建项目,直至开发一段时间,初期编码及框架已完善后,才拿到git仓库的地址。此时需要将本地代码上传到git仓库。
上传至git仓库,可以使用终端,键入命令完成。但为了后续更直观的查看代码更改,使用sourcetree工具。现将大致流程记录。
下载sourcetree就不详细记录了,直接百度搜就有。

一、使用sourcetree添加仓库。

1、点击"新建"->"从url克隆"


2、输入地址。

将git仓库的地址(https:// xxxxxx/xx.git)输入到源URL 中,然后点击目标路径,会生成一个user/xx/xxx的目标路径。

此处特别注意:先输入密码,先输入密码,先输入密码。

重要的事情说3遍。可能本地那个目标路径,并非你想存放的最终路径,可以稍后更改。但你要在弹出的密码输入框中先输入密码。否则底部的转圈圈就会变成"这是一个无效的源路径/URL"。

如果点了取消,没有输入密码,就会出现下图,且无法克隆。因为没有密码,所以提示没有权限。

而在第一次弹出密码窗就输入密码,正常的图片应该是下图

此时,你可以将目标路径的地址,更改为你想存放的本地目录即可。点击克隆。会再次弹出密码框,输入密码后,就ok了。

二、将本地代码移入。

1、将本地写好的代码移入刚才克隆的本地仓库中。

由于我们的仓库是新建的。里面什么也没有,只有一个README.md文件,所以,我将之前工程中所有文件全部移入,包括工程文件及pod内容。

2、添加.gitigonre文件,忽略不需要上传的文件。

由于git仓库上传有大小限制(单文件不超过10M),而pod或其他第三方的库往往比较大,无法上传到git。此时就需要忽略上传pod等文件。

2.1、创建.gitigonre文件。

可以通过终端新建。终端cd到工程目录下,输入touch .gitignore 即可创建。

c 复制代码
touch .gitignore

(如果之前项目中有.gitignore文件的话,也可以直接拷贝进来)

因为.gitigonre是隐藏文件,需要显示隐藏文件夹,才可以看到。下面是快捷键

c 复制代码
command + shift + .  显示/隐藏 文件夹快捷键  
2.2、添加要忽略的文件格式

内容如下:可根据具体情况添加

c 复制代码
# Xcode
.DS_Store
*/build/*
*.pbxuser
!default.pbxuser
*.mode1v3
!default.mode1v3
*.mode2v3
!default.mode2v3
*.perspectivev3
!default.perspectivev3
xcuserdata
profile
*.moved-aside
DerivedData
.idea/
*.hmap
*.xccheckout
*.xcworkspace
!default.xcworkspace

#CocoaPods
Pods
!Podfile
!Podfile.lock

保存后,打开sourcetree工具,会发现待提交的文件比之前少很多,其中pod相关的都不再显示。

三、sourcetree代码提交。

点击提交,输入备注后,再次点提交,存储到临时仓库。再点击推送,输入密码,同步到git仓库中。

打开工程,随便更改一些代码,检验sourcetree是否检测到更改。如果sourcetree没有变化,将sourcetree退出,再打开。我的重新打开后,就可以显示刚修改的内容。

备注:之前使用终端将仓库clone到本地后,将代码加入,再使用sourcetree进行管理时,不知道哪个步骤出现问题,导致本地修改代码后,sourcetree一直检测不到更改。后使用这个流程,一切顺利。

相关推荐
echome8882 小时前
Git 日常救急:撤销提交、找回误删文件和解决冲突
git·版本控制
andyweike3 小时前
Swift
开发语言·ios·swift
金海星科技3 小时前
船舶交通管理中心的人工智能值守:从“听、说、读、写“看人机协同
人工智能·macos·xcode
茶底世界之下3 小时前
白杯偏蓝,色温调到哪里该停?Awaking 两版正式导出
ios
赵民勇6 小时前
Git命令详解
git
2501_915921437 小时前
KXBuild CI 实操,Windows/Linux 服务器接入 Jenkins 打包 iOS IPA
服务器·windows·vscode·ios·ci/cd·个人开发·敏捷流程
狗凯之家源码网7 小时前
iOS C2 V2 与 Python FastAPI 全链路远控系统深度评测
python·ios·fastapi
看浪的路人7 小时前
第6讲:Streaming 优化——告别“转圈圈“的用户体验
ios·iphone·xcode
传奇开心果编程18 小时前
【Flutter踩坑排雷】第7课:巨型 build 函数坑|全部 UI 写在同一个 build,维护难、隐性异常
android·flutter·ios·移动开发·跨平台·dart·声明式ui
瓦瓦gogo1 天前
第一次了解 iOS 开发:从 Swift、SwiftUI 到公共组件
ios·swiftui·swift