确保在项目更改之前提交库更改?
Ensuring Library changes are committed before Project changes?
我有一个跨平台项目,它依赖于我自己的一些库。该项目和每个库都有各自的存储库,可以看到定期更改。
库是抽象模块,它们仍在与项目一起发展,但并不特定于该项目(尽管目前,上述项目正在推动大部分更改)。项目依赖于这些,因此库更改应始终在关联的项目更改(即由于库界面更改而进行的更改)之前提交。
我的问题是我经常忘记先提交库的更改, 在 SourceTree 中。
目前,我已经在我的项目文件夹中创建了指向库文件的硬链接。这样,因为 OS 处理链接,我不需要退出项目文件夹的愚蠢的相对路径(例如 ../../../my.h
),当项目文件夹结构发生变化时它可能会改变(就像刚刚发生的那样) .更重要的是,这确保我将在 SourceTree(在项目中)中看到对这些文件的更改,并将它们作为项目的一部分每次提交。关于库回购,好吧,当我最终在 SourceTree 中注意到那些回购有变更集时,我可以提交相同的更改(这是我通常忘记先做的任务)。够好了...暂时。
有没有更好的方法来简单地处理这个问题?我不希望将库作为项目的一部分提交 也 -不必要的重复。我还在项目中的硬链接上尝试了 .gitignore,这样我就永远不会将它们作为项目回购的一部分提交,但是当然我又回到了原点——因为我只看项目,我仍然忘记在项目更改之前提交库更改...这意味着任何给定的构建都可能被破坏,因为该提交不存在关联的库更改。
看起来 git 子模块是可行的方法。幸运的是,SourceTree 支持它们。
我有一个跨平台项目,它依赖于我自己的一些库。该项目和每个库都有各自的存储库,可以看到定期更改。
库是抽象模块,它们仍在与项目一起发展,但并不特定于该项目(尽管目前,上述项目正在推动大部分更改)。项目依赖于这些,因此库更改应始终在关联的项目更改(即由于库界面更改而进行的更改)之前提交。
我的问题是我经常忘记先提交库的更改, 在 SourceTree 中。
目前,我已经在我的项目文件夹中创建了指向库文件的硬链接。这样,因为 OS 处理链接,我不需要退出项目文件夹的愚蠢的相对路径(例如 ../../../my.h
),当项目文件夹结构发生变化时它可能会改变(就像刚刚发生的那样) .更重要的是,这确保我将在 SourceTree(在项目中)中看到对这些文件的更改,并将它们作为项目的一部分每次提交。关于库回购,好吧,当我最终在 SourceTree 中注意到那些回购有变更集时,我可以提交相同的更改(这是我通常忘记先做的任务)。够好了...暂时。
有没有更好的方法来简单地处理这个问题?我不希望将库作为项目的一部分提交 也 -不必要的重复。我还在项目中的硬链接上尝试了 .gitignore,这样我就永远不会将它们作为项目回购的一部分提交,但是当然我又回到了原点——因为我只看项目,我仍然忘记在项目更改之前提交库更改...这意味着任何给定的构建都可能被破坏,因为该提交不存在关联的库更改。
看起来 git 子模块是可行的方法。幸运的是,SourceTree 支持它们。