从git中查找内核源代码tgz中的应用补丁

时间:2017-12-12 22:44:59

标签: linux git version-control kernel

我有一个内核源代码,其中包含tgz存档中的补丁。大多数补丁在内核git中都是已知的,但我不知道哪些已经集成。如何判断哪些补丁已应用于源代码?

1 个答案:

答案 0 :(得分:0)

似乎您正在将源代码复制到git repo的外部(让我们称之为应用程序的生产环境)。然后你想检查git repo中的最新提交是否应用于你的生产环境(在git repo之外)。

如果您遇到上述情况,直接答案是否定的。但你可以将生产环境改为git仓库中的一个分支

对于git repo,我们通常使用分支来单独和间歇地工作。如果我们需要在分支之间应用更改,还要同步分支/工作/环境。根据您的情况,您可以在git仓库中使用两个分支:

  • master分支:作为git仓库中的生产环境。
  • develop分支:开发新的更改/功能或修复此分支上的错误,当您准备将更改应用于master分支(生产环境)时,只需合并develop分支进入master分支。

工作流程的步骤如下:

假设您现在只在master分支机构工作,提交历史记录如下:

…---A---B---C  master

现在,您可以按evelop创建广告git checkout -b develop分支,然后作为此分支工作(例如下面的提交DEF图),提交历史记录如下:

…---A---B---C  master
             \
              D---E---F   develop

如果要将develop分支的提交应用到master分支(生产环境),请使用以下命令:

git checkout master
git merge develop

提交历史记录将是(master分支和develop分支都指向最新提交F):

…---A---B---C---D---E---F  master, develop

有关分支模型的详细信息,您还可以参考A successful Git branching model