Vai*_*han 3 git github git-diff
我想知道如何从 9.3.1-STABLE 和 TN-9.3.1-STABLE 获取 git diff,并具有以下文件夹/git 结构
root@build3:/tank/home/stable-builds/FN # git branch
9.3-STABLE
* 9.3.1-STABLE
root@build3:/tank/home/stable-builds/TN # git branch
TN-9.3-STABLE
* TN-9.3.1-STABLE
master
Run Code Online (Sandbox Code Playgroud)
任何答案将不胜感激。
首先我们让两个 git repos 相互认识
转到一个存储库
cd /tank/home/stable-builds/FN
Run Code Online (Sandbox Code Playgroud)
将另一个 repo 添加为“远程”
git remote add TN /tank/home/stable-builds/TN
Run Code Online (Sandbox Code Playgroud)
获取另一个 repo
git fetch TN
Run Code Online (Sandbox Code Playgroud)
现在,我们要求一个差异
git diff 9.3.1-STABLE remotes/TN/TN-9.3.1-STABLE
Run Code Online (Sandbox Code Playgroud)
如果您计划定期进行此类比较,我建议使用远程存储库,如@BartBog的答案中所述。
如果没有,您可以执行以下操作而不添加远程存储库:
git diff --no-index -- /tank/home/stable-builds/FN /tank/home/stable-builds/TN
Run Code Online (Sandbox Code Playgroud)
或者简单地:
git diff /tank/home/stable-builds/FN /tank/home/stable-builds/TN
Run Code Online (Sandbox Code Playgroud)
来自 git 手册:
git diff [options] [--no-index] [--] <path> <path>
这种形式是比较文件系统上给定的两个路径。
--no-index
当在 Git 控制的工作树中运行命令且至少有一个路径指向工作树外部时,或者在 Git 控制的工作树外部运行命令时,可以忽略该选项。
注意:它比较文件系统上的工作副本。
如果要将 FN 工作副本与 TN 中的 TN-9.3.1-STABLE 分支进行比较,可以执行以下操作:
如果您位于/tank/home/stable-builds/FN
:
git --git-dir=../TN/.git diff TN-9.3.1-STABLE
Run Code Online (Sandbox Code Playgroud)
如果您在其他地方:
git --git-dir=/tank/home/stable-builds/TN/.git --work-tree=/tank/home/stable-builds/FN diff TN-9.3.1-STABLE
Run Code Online (Sandbox Code Playgroud)
来自 git 手册:
--git-dir=<path>
设置存储库的路径。
--work-tree=<path>
设置工作树的路径。
git diff origin/9.3.1-STABLE TN-9.3.1-STABLE
Run Code Online (Sandbox Code Playgroud)
这对我来说很有效,实际上 origin/9.3.1-STABLE 和 TN-9.3.1-STABLE 是同一个存储库中的分支。
当我发布这个问题时,我在想 9.3.1-STABLE 和 TN-9.3.1-STABLE 是不同的存储库,如果有的话,很抱歉造成混淆。
# git diff --stat origin/9.3.1-STABLE TN-9.3.1-STABLE
ChangeLog | 26 +++++-
Makefile | 12 +--
README.md | 6 +-
ReleaseNotes | 97 ++++------------------
build/README | 6 +-
build/create_redmine_changelog.py | 4 +-
build/files/install.sh | 4 +-
build/nanobsd-cfg/FREENAS.amd64 | 3 -
build/nanobsd-cfg/Files/etc/rc.conf.local | 7 +-
Run Code Online (Sandbox Code Playgroud)
^^^ 只会给您更改的文件,并带有完整路径,您可以执行如下操作以清楚地了解到底更改了什么以及在哪里更改。
# git diff origin/9.3.1-STABLE:ChangeLog TN-9.3.1-STABLE:ChangeLog
diff --git a/origin/9.3.1-STABLE:ChangeLog b/TN-9.3.1-STABLE:ChangeLog
index 35e315e..656c681 100644
--- a/origin/9.3.1-STABLE:ChangeLog
+++ b/TN-9.3.1-STABLE:ChangeLog
@@ -1,2 +1,24 @@
-#11936 Bug Critical UI left pane does not populate
-#12208 Bug Critical Fix late-breaking issue with ntpd update
+o Add a vCenter plugin. This functionality allows you to install
+ the TrueNAS 1.0 vCenter plugin in to vCenter, which will then
+ allow you to create iSCSI and NFS datastores directly from vCenter.
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
4366 次 |
最近记录: |