使用 Xcode 在 Git 中共享代码

Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019

本指南介绍如何使用 Azure Repos 共享 Xcode 项目。

先决条件

类别 要求
项目访问权限 项目的成员。
权限 - 查看私有项目中的代码:至少要具有基本访问权限。
- 克隆或贡献专用项目中的代码:必须是参与者安全组的成员或者具有项目中的相应权限。
- 设置分支或存储库权限:管理分支或存储库的权限 权限。
- 更改默认分支:对存储库具有编辑策略权限。
- 导入存储库:必须是项目管理员安全组的成员,或者将 Git 项目级别创建存储库权限设置为允许。 有关详细信息,请参阅设置 Git 存储库权限
服务 已启用存储库
工具 可选。 使用 az repos 命令:Azure DevOps CLI

注释

在公共项目中,具有 利益干系人 访问权限的用户具有对 Azure Repos 的完全访问权限,包括查看、克隆和参与代码。

类别 要求
项目访问权限 项目的成员。
权限 - 查看代码:至少需要具有基本访问权限。
- 克隆或贡献代码:贡献者安全组的成员或项目中的相应权限。
服务 已启用存储库

身份验证方法

选择最适合工作流的身份验证方法:

方法 最适用于 设置复杂性 安全性
SSH 密钥 单个开发人员,长期使用 中(一次性设置)
Microsoft Entra ID 令牌 企业环境,临时访问 中等 很高
个人访问令牌 特定方案,自动化 中等

小窍门

对于大多数开发人员, SSH 密钥 提供了 Xcode 的最佳安全性和可用性平衡。 您只需设置一次,它们就能无缝运行。

使用 Git 设置 Xcode 项目

为代码创建本地 Git 存储库,以在版本控制中管理项目。

选择与情况匹配的选项:

注释

如果项目已在本地 Git 存储库中,请跳到 Azure Repos 中创建新的 Git 存储库

新项目

创建新项目时创建本地 Git 存储库。 创建新项目时,选择 “在 My Mac 上创建 Git 存储库 ”。

显示如何在创建 Xcode 项目时创建 Git 存储库的屏幕截图。

现有项目

通过转到 源代码管理、创建工作副本... ,为不在版本控制中的现有项目创建本地 Git 存储库。 选择要添加到本地 Git 存储库的项目,然后选择“ 创建”。 Xcode 为代码创建 Git 存储库,并使用项目文件添加 提交

显示如何将本地 Git 存储库添加到现有 Xcode 项目的屏幕截图。

在 Azure Repos 中创建新的 Git 存储库

在 Azure Repos 中为 Xcode 项目创建新的 Git 存储库。

注释

如果已在 Azure DevOps 中为 Xcode 项目创建了存储库,请跳到 Connect 并推送项目

  1. 在 Azure DevOps 组织中,转到项目,然后选择当前 Git 存储库名称旁边的下拉菜单 Azure DevOps 下拉选取器。 选择 “新建存储库”。

  2. 输入新 Git 存储库的名称,然后选择“ 创建”。

  3. 从新存储库复制克隆 URL。 根据身份验证方法选择 URL 格式:

    • SSH:使用 SSH 克隆 URL(如果设置了 SSH 密钥)
    • HTTPS: 使用 HTTPS 克隆链接(用于令牌)

    小窍门

    选择身份验证方法:

    使用 SSH 时,请在配置远程时使用 SSH 克隆 URL。

连接并推送您的项目

现在,将本地 Xcode 项目连接到 Azure Repos 并推送代码。

  1. 在 Xcode 中,转到 源代码管理 并选择 [项目名称] -- main,然后选择 “配置”。

    显示如何配置 Xcode Git 项目设置的屏幕截图。

  2. 选择 “远程”,然后选择 加号 图标,然后选择“ 添加远程”。

  3. “地址 ”字段中,粘贴之前复制的 Git 克隆 URL。 选择 “添加远程”,然后选择 “完成” 以创建 origin 远程。

    显示如何将远程存储库添加到 Xcode 项目的本地 Git 存储库以连接到 Azure DevOps Services 的屏幕截图。

  4. 转到 源代码管理>推送,输入要推送到的分支名称(通常为main),然后选择 推送

    显示如何将 Xcode 项目推送到 Azure DevOps Services 的屏幕截图。

  5. 如果系统提示输入凭据,请选择身份验证方法:

    重要

    建议使用 SSH 密钥或 Microsoft Entra ID 令牌进行安全身份验证。 仅当其他方法不可用时,才使用个人访问令牌。

    如果配置了 SSH 密钥,Xcode 会自动进行身份验证。 不需要其他凭据。

    选项 2:Microsoft Entra ID 令牌

    对于 用户名:输入 Azure DevOps 用户名。 对于 密码:使用 Microsoft Entra ID 访问令牌。

    # Get token using Azure CLI
    az account get-access-token --resource 499b84ac-1321-427f-aa17-267ca6975798 --query "accessToken" --output tsv
    

    选项 3:个人访问令牌(可选)

    对于 用户名:输入 Azure DevOps 用户名。 对于密码:使用代码(读取和写入)范围创建个人访问令牌

    选择 “确定 ”以完成身份验证。

    显示如何使用令牌进行身份验证的屏幕截图。

身份验证成功后,Xcode 会将项目推送 到 Azure Repos。 你的代码现在可供你的团队协作处理。

小窍门

设置身份验证后,以后的推送和拉取将自动使用相同的凭据。

后续步骤