主要内容

使用源代码控制项目

您可以使用项目和文件源代码控制之下。源代码控制存储库中的文件,让您检查文件的存储库的工作,回保存更改,并让你看到不同版本的历史文件检入。更多信息在MathWorks使用源代码控制产品,明白了s manbetx 845在MATLAB源代码控制集成

项目集成两个源代码控制系统,Git™和颠覆®(SVN)。

建立一个项目源代码控制、使用任何这些工作流:

  • 创建一个新项目从现有的存储库。

  • 现有的项目添加到源代码控制中。

  • 创建一个新项目已经在源代码控制下的一个文件夹中。

  • 创建一个新的GitHub®库的一个新的或现有的项目。

然后,当您的项目是在源代码控制下,你可以从MATLAB中执行操作®如检查文件,运行检查,提交和恢复的变化。

MATLAB在线™不支持,Subversion集成。万博1manbetx

设置源控制

有四种方法来建立一个项目源代码控制。

从现有的存储库创建新项目

创建一个新的本地副本的一个项目从一个现有的库检索文件从源代码控制。您可以克隆一个Git存储库,或者查看文件从一个SVN储存库,或使用另一个源代码控制集成。

从现有的存储库中创建一个新项目:

  1. 选项卡上,单击>项目>从Git>项目>从SVN。新项目从源代码控制对话框打开。

  2. 如果你知道你的库位置,粘贴到库路径字段。

    否则,浏览和检索文件验证存储库路径,点击改变

    1. 在对话框中,指定存储库URL输入或粘贴URL字段,从列表中选择最近的存储库,或通过单击按钮。

    2. 点击验证检查存储库路径。如果路径无效,请检查与源代码控制存储库浏览器的URL。

    3. 如果你看到一个身份验证存储库对话框,输入登录信息继续。

    4. 如果有必要,存储库中选择一个更深层次的文件夹树。使用SVN,您可能想查看树干或文件夹下的一个分支标签

    5. 当你已经完成了指定你想检索URL路径,点击好吧。对话框关闭,您回到新项目从源代码控制对话框。

  3. 沙盒字段中,选择你想要的工作文件夹将检索到的文件为您的新项目。SVN,使用一个本地文件夹,等待最好的结果,因为使用网络文件夹是缓慢的。

  4. 点击检索

    如果您的存储库已经包含一个项目,该项目是准备当工具完成检索文件到你选定的沙箱文件夹。

    如果你的沙盒还没有包含一个项目,然后一个对话框,询问您是否想要在文件夹中创建一个项目。创建一个项目,指定一个项目名称并单击好吧。欢迎屏幕出现来帮助您设置您的新项目。设置项目的更多信息,请参阅建立项目

如果你遇到错误OutOfMemoryError: Java堆空间当克隆大Git存储库,编辑你的MATLAB偏好增加堆大小。

  1. 选项卡,环境部分中,点击首选项

  2. 选择MATLAB>一般>Java堆内存

  3. 移动滑块来增加堆大小,然后单击好吧

  4. 重启MATLAB。

现有的项目添加到源代码控制中

如果你有一个现有的项目,您可以将其添加到Git或SVN源代码控制。

向源代码控制添加一个项目:

  1. 项目选项卡,源控制部分中,点击使用源代码控制。源控制信息对话框打开。

  2. 单击将项目添加到源代码控制中按钮。向源代码控制添加对话框打开。

  3. 源码控制工具存储库列表中,选择正确的工具。如果你选择Git,然后跳过步骤4,直接进入步骤5。

  4. 如果您正在使用一个SVN远程存储库,指定一个现有的存储库,点击按钮来浏览存储库,将URL粘贴到字段或使用列表中选择最近的一个存储库中。

    点击验证检查的路径选择存储库,然后单击好吧

  5. 点击转换完成向源代码控制添加项目。

    项目运行时完整性检查。

  6. 完整性检查运行后,点击开放项目回到您的项目。

    这个项目的细节显示电流源控制的工具和存储库的位置。

  7. 如果你创建了一个新的存储库,选择文件>修改视图和点击提交提交文件的第一个版本的新存储库。在对话框中,输入一个如果你想发表评论,并点击提交

如果你想合并与Git分支,您需要执行额外的设置步骤。有关更多信息,请参见设置Git源代码控制

如果您想要使用其他版本的SVN内置版本,看看建立了SVN源代码控制

在文件夹中创建新的项目已经在源代码控制下

如果你从一个文件夹,创建一个新项目已经在源代码控制下,MATLAB自动将新项目添加到源代码控制中。更多的信息从文件夹中创建一个项目,看看创建项目

创建新的GitHub存储库

创建一个GitHub库将Git源代码控制添加到您的新的或现有的项目。GitHub库创建成为项目远程存储库。创建一个GitHub库,你必须有一个GitHub帐户。

创建一个空白项目和一个GitHub远程存储库:

  1. 选项卡上,单击>项目>从Git

  2. 选择>GitHub库。在GitHub对话框中,输入您的用户名个人访问令牌。填满库名称描述字段并单击创建

    MATLAB创建一个新的公共GitHub库和填充库路径在https://github.com/myusername/mynewrepository格式的信息。

  3. 沙盒对你的沙箱字段中,指定位置。所选文件夹必须是空的。点击检索创建沙箱。

    确认项目名称和创建,单击好吧

在创建GitHub库和沙箱之后,将你的文件添加到沙箱。提交你的第一个版本文件到你的本地存储库,然后将所有修改远程GitHub库。有关更多信息,请参见使用Git在MATLAB

提示

如果你想创建一个远程GitHub库现有项目,分享你的项目GitHub。

与加载您的项目,项目选项卡上,选择分享>GitHub。有关详细说明,请参见发布在GitHub上分享项目

执行源代码控制操作

检索版本和检查项目文件

这个表显示了如何检查修改后的项目文件,更新修正,得到和管理文件锁定,标签项目文件。

行动 过程
刷新项目文件的状态。

检查本地修改的文件,项目选项卡,源控制部分中,点击刷新。刷新查询当地的沙盒状态和检查更改与MATLAB以外的另一个工具。

有关更多信息,请参见SVN文件状态更新和修订使用Git在MATLAB

检查项目文件中的修改。

找出是否有新版本的项目存储库中文件视图中,右键单击该文件,并选择源控制>检查修改

这个选项使用SVN联系外部修改存储库来检查。项目比较本地文件的修订号码和存储库的版本。如果存储库中的修订号大于当地沙箱的文件夹,然后项目显示(最新)本地文件的修订号。

更新所有项目文件。

使用SVN,所有项目文件的最新变化,去项目选项卡,和源控制部分中,点击更新。该项目将显示一个对话框列出所有修改过的文件在磁盘上。你可以控制这种行为偏好使用项目显示源代码控制更新变化。有关更多信息,请参见SVN文件状态更新和修订

使用Git,获得最新的变化对于所有项目文件从源代码控制存储库并将它们合并到当前分支,去项目选项卡,和源控制部分中,点击。手动修改和合并,在项目选项卡,源控制部分中,点击获取。这个更新的所有分支起源在本地存储库。当你点击获取没有改变,你的沙箱文件。看到别人的改变,合并在原点改变当地的分支机构。有关更多信息,请参见使用Git在MATLAB

更新修订为选定的项目文件。

更新一组选定的文件,文件视图中,右键单击该文件,并选择源控制>更新您正在使用命令的源代码控制系统。例如,如果您正在使用SVN,选择源控制>更新从SVN得到新的存储库中选择文件的本地副本。

清晰的SVN登录信息。 清除任何存储登录凭证的项目选项卡,源控制部分中,点击清除登录
SVN文件锁定。

SVN文件锁定,文件视图中,选择你想要查看的文件。右键单击选中的文件和选择源控制>获得文件锁。一个锁象征出现在SVN源代码控制列。其他用户看不到锁象征沙箱,但他们无法获得文件锁或改变当你有锁。查看或打破锁上项目选项卡上,单击

获得文件锁只是为了SVN。Git没有锁。

管理SVN库锁。

管理全球SVN锁库,在项目选项卡,源控制部分中,点击。有关更多信息,请参见得到SVN文件锁定

项目文件的标签版本。

识别特定的所有项目文件的修订,在项目选项卡,源控制部分中,点击标签。指定标签文本并单击好吧。标签被添加到每个项目文件。如果你没有出现错误标签文件夹在您的存储库。有关更多信息,请参见建立了SVN源代码控制

审查项目文件的变化

你可以检查项目文件使用的变化文件>修改视图。这个表显示了如何查看修改后的项目文件列表,检查文件的历史,和比较两个文件的修订。

行动 过程
查看修改后的项目文件。

文件视图中,选择修改(文件数量)选项卡。的文件>修改视图是可见的只有如果你使用源代码控制您的项目。

提示

使用列表布局视图文件无需扩展文件夹。

您可以确定修改或矛盾文件夹内容使用源代码控制总结状态。在文件视图、文件夹显示卷起的源代码控制状态。这使得它更容易定位文件的变化,特别是冲突文件。你可以悬停在源代码控制状态(例如,GitSVN列)为一个文件夹视图工具提示显示有多少文件里面修改,矛盾,添加,删除。

更新修改的文件列表。

更新修改的文件列表,在项目选项卡,源控制部分中,点击刷新

查看修订历史。

文件视图中,右键单击并选择一个文件源控制>显示修改

浏览和比较文件在SVN的变更集,在项目选项卡,源控制部分中,选择显示日志。在文件中修改对话框中,选择要查看修改的文件列表的修改。降低列表视图中右键单击文件更改或保存修改。

比较修正。

文件视图中,右键单击并选择一个文件比较>与祖先运行比较针对本地存储库(Git)或对过去在沙箱(SVN)检出的版本。比较工具显示报告。

比较其他修改的文件,选择比较>与修订

查看报告比较,选择修改你想要比较和点击比较选择。或者,选择一个版本,然后单击与当地。有关更多信息,请参见比较文件和文件夹和合并文件

项目定义文件。中的文件资源/项目文件夹是生成项目定义文件当你第一次创建或更改您的项目。项目定义文件使您能够添加项目元数据文件没有检查出来。一些元数据的例子你可以改变这种方式是快捷方式,标签,和项目描述。项目定义文件还指定文件添加到您的项目。这些文件不是项目的一部分。

你做任何更改到你的项目中产生的变化资源/项目文件夹中。这些文件存储项目的定义在XML文件的格式是可能发生变化。

你不需要直接查看项目定义文件,除非源代码控制工具需要合并。所示的文件,这样你知道所有的文件被提交到源代码控制系统。

从R2020b,默认项目定义文件类型使用多个项目文件(固定路径长度)。改变的项目定义文件管理类型选择创建项目时,使用matlab.project.convertDefinitionFilesmatlab.project.convertDefinitionFiles保存项目的源代码控制的历史。

警告

为了避免合并问题,不要转换定义文件类型为项目不止一次。

R2020b之前版本,如果你想要改变的项目定义文件管理类型选择的项目创建时:

  1. 选项卡,环境部分中,点击首选项。选择MATLAB>项目而在新项目部分中,选择其中一个选项项目定义文件:

    • 使用多个项目文件——有助于避免文件冲突当执行合并共享项目

    • 使用多个项目文件(固定路径长度)——是更好的如果你需要使用长路径

    • 使用单个项目文件(不建议用于源代码控制)——快但可能会导致合并问题当两个用户提交的变化相同项目源码控制工具

  2. 创建一个项目归档文件(.mlproj)。有关更多信息,请参见分享项目出口

  3. 创建一个新项目的归档项目。有关更多信息,请参见创建项目

停止与项目管理文件夹,删除资源/项目文件夹,看到matlab.project.deleteProject

运行项目检查

运行检查项目,项目选项卡中,单击向下箭头扩大工具画廊。下项目检查,点击检查项目。项目检查问题项目的完整性,如丢失的文件,未保存的文件,或文件而不是源代码控制之下。一个对话框报告结果。你可以点击详情,按照提示来解决问题。

如果你想检查所需的文件,点击依赖分析仪分析修改的文件的依赖关系。使用依赖工具来分析您的项目的结构。

检查细节问题可以解决,请参阅在项目使用导出文件,分析项目依赖关系

提交修改后的项目文件

审核变更和运行项目检查后,你准备提交你的项目文件修改源代码控制。此表显示了如何提交修改后的项目文件。

行动 过程
提交所有修改的文件源代码控制。

文件视图中,选择修改(文件数量)选项卡。在项目选项卡,源控制部分中,点击提交。在对话框中输入注释,然后单击提交。如果您正在使用Git源代码控制,提交到本地存储库。如果您正在使用SVN源代码控制存储库提交更改。

出现一个消息,如果你不能提交,因为存储库已经在前面。您可以提交文件之前,您必须更新其修改当前修订。如果您正在使用Git源代码控制,点击。如果您正在使用SVN源代码控制,点击更新。在你提交之前解决任何冲突。

提交选定的文件源代码控制。

文件视图中,选择文件,右键单击,并选择源控制>提交

如果你提交单个文件,风险不提交相关项目定义文件,记录你的文件。为了避免这种情况,提交所有修改的文件。

推动与Git项目文件。

将本地提交发送到远程存储库,在项目选项卡,源控制部分中,点击。出现一个消息如果你不能直接将您的更改,因为存储库了。点击获取获取所有更改从远程存储库。合并分支和解决冲突,然后你可以把您的更改。有关更多信息,请参见使用Git在MATLAB

把空与Git项目文件夹。

你不能空文件夹添加到Git源代码控制,所以你不能点击然后克隆一个空文件夹。项目中您可以创建一个空文件夹,但是如果你推动改变,然后同步新沙箱,空文件夹没有出现在新沙盒。相反,运行检查项目,为你创建一个空的文件夹。

另外,将空的文件夹为其他用户同步存储库,创建一个gitignore文件的文件夹,然后将您的更改。

创建Git池。

Git隐藏未提交的更改存储起来,供以后使用。创建一个隐藏的项目选项卡,源控制部分中,点击中搜。隐藏对话框打开。点击新的箱子创建一个包含当前修改的文件存放。有关更多信息,请参见使用Git池存储未提交的更改

创建一个与Git分支。

在创建一个分支项目选项卡,源控制部分中,点击分支机构。树枝对话框,您可以在视图中,开关,创建和合并分支。

选择一个源的新分支。单击浏览器中的一个节点分支图,或在源文本框输入一个惟一的标识符。您可以输入一个标签,分支的名字,或一个独特的SHA1哈希的前缀(例如,73年c637)来识别一个特定的承诺。保留默认值创建一个分支从当前分支的负责人。在输入一个名称分支机构名称文本框,然后单击创建

开关、比较、保存和合并与Git分支。

开关、比较、保存和合并分支项目选项卡,源控制部分中,点击分支机构。树枝对话框,您可以在视图中,开关,创建和合并分支。有关更多信息,请参见与Git分支和合并

解决冲突。

如果你和另一个用户改变相同的文件在不同的沙箱或者在不同的分支,出现冲突消息当你试图提交你的修改的文件。提取标记冲突如果必要,比较差异导致冲突和解决冲突。如果你有几个冲突文件,看看确定订单使用依赖分析仪解决冲突

寻找冲突文件文件>修改视图。识别冲突文件夹内容使用源代码控制摘要状态。文件夹显示卷起的源代码控制地位。这使得它更容易定位文件的变化,特别是冲突文件。你可以悬停在源代码控制状态为一个文件夹视图工具提示显示有多少文件里面修改,矛盾,添加,删除。

提示

使用列表布局视图文件无需扩展文件夹。

检查源代码控制状态列(GitSVN)文件与一个红色的警告标志,这表明冲突。右键单击冲突文件并选择观点冲突比较版本。比较报告打开显示冲突的文件之间的差异。

当你解决了变化和沙箱想提交的版本,在文件上单击右键并选择源控制>马克冲突解决

Git,分支的状态Git窗格中变化合并安全

选择文件>修改视图中检查更改。

恢复的变化

此表显示了如何恢复项目文件的变化。关于恢复的更多信息的变化,看到恢复SVN源代码控制的变化使用Git在MATLAB

行动 过程
恢复本地更改。

释放锁和回到过去沙箱更新的版本(也就是说,最后版本同步或从存储库中检索),文件视图,右键单击要恢复的文件,选择源控制>抛弃本地更改并释放锁

在使用Git时抛弃本地更改,右键单击并选择一个文件源控制>恢复本地更改。要删除所有本地更改,单击分支机构Git窗格中,单击恢复到头部

恢复一个文件到指定的修订

恢复文件到指定的修订,右键单击并选择一个文件源控制>恢复使用SVN源控制>恢复使用Git

在恢复文件对话框中,选择修改回复。选择修改视图的信息变化,如作者、日期、日志消息。点击回复

如果你恢复一个文件到一个早期版本,然后做出改变,你不能提交文件,直到你解决冲突与存储库的历史。

恢复一个项目到指定的修订。

回复一个项目到指定的修改,在项目选项卡,源控制部分中,点击恢复项目。在恢复文件对话框中,选择修改回复。

列表中的每个修订修改文件的更改集。选择修改视图的信息变化如作者、日期和日志消息。

一旦你选择了一个修正,满足信息是正确的,点击回复

在项目使用导出文件

总的来说,这是一个最佳实践,省略和临时文件来自你的项目或排除他们从源代码控制。检查派生或临时文件,项目选项卡中,单击向下箭头扩大工具画廊。下项目检查,点击检查项目。如果你添加slprj文件夹的项目,项目检查建议你删除这个项目和提供解决。

这也是一个最佳实践排除衍生文件等.mex *的内容slprj文件夹,sccprj文件夹,或其他代码生成文件夹从源代码控制,因为它们会导致一些问题。例如:

  • 源代码控制系统,可以做文件锁定,您可能会遇到冲突。如果slprj处于源代码控制中生成代码,最下的文件slprj改变,成为锁定。其他用户无法生成代码,因为文件许可错误。的slprj通过代码生成文件夹也可以用于模拟,所以锁定这些文件会影响一个团队。等二进制文件,出现同样的问题.mex *

  • 删除slprj通常是必需的。然而,删除slprj原因等问题“不是一个工作副本”错误如果文件夹下一些源代码控制工具(例如,SVN)。

  • 如果你想检查生成的代码作为工件的过程中,是很常见的复制一些文件slprj缓存文件夹,到一个单独的位置,是项目的一部分。这样,你可以删除当你需要临时缓存文件夹。使用packNGo(MATLAB编码器)函数所生成的代码文件列表,并使用API来将它们添加到项目的适当的元数据。

  • slprj文件夹可以包含多个小文件。这可能影响性能的源代码控制工具当每个检查这些文件是否更新。

发现项目文件未保存的更改

你可以检查你的项目文件未保存的更改。在项目选项卡中,单击向下箭头扩大工具画廊。下项目检查,点击显示未保存的更改

在未保存的更改对话框中,您可以看到该项目文件未保存的更改。项目只有检测未保存的更改在MATLAB和Simulink编辑万博1manbetx®编辑器。手动检查更改编辑其他工具。如果你有引用项目,文件由项目分组。你可以保存或丢弃所有检测到的变化。

当结束一个项目管理打开的文件

当你关闭一个项目,如果有未保存的更改的文件,一个消息提示您保存或丢弃的更改。你可以看到所有文件未保存的更改,按项目如果你有引用的项目分组。为了避免失去工作,您可以保存或丢弃的更改文件,项目,或全球。

控制这种行为,选项卡,环境部分中,点击首选项。去MATLAB>项目而在项目关闭标记部分,选择或清除复选框检查打开项目模型和关闭他们,除非他们是肮脏的

相关的话题