git status
告诉我,我的分支和我从另一个存储库开始的分支已经分歧:
# On branch master
# Your branch and 'origin/master' have diverged,
# and have 13 and 13 different commit(s) each, respectively.
Run Code Online (Sandbox Code Playgroud)
但每个的提交历史是相同的.也就是说git log
,使用相同的SHA-1哈希以相同的顺序显示相同的提交.这是最后13次提交,以及之前的所有事情.
这是怎么回事?!或者我误解了一些基本的东西 - git对我来说都是新的.
这是一个很长的故事,我是如何进入这个混乱的 - git-svn,cygwin,EGit,pull --rebase与虚假的冲突 - 但我想知道这种"分歧没有任何差异"是否可能是由于换行?我在记事本中打开了文件,并阅读了很多关于svn/git/cygwin和CRLF的内容,但没有任何启示.
编辑 确定.以上大部分都不是真正的问题.也许我不明白git log
或某些事情搞砸了......
我有两个存储库.如果我去rep_A并运行,git log
我得到相同的结果(特别是相同的SHA-1),就像我去rep_B并运行一样git log
.
在rep_A,如果我运行,git log origin/master
我会得到我期望的不同提交历史.(不同的SHA-1,但相同的消息 - 我是如何创造这个混乱的另一个故事.)
git remote -v show
向我保证原产地是我所期望的.
git log
在rep_B上,表现不如我所料.就像它给了我rep_A的提交历史.我错过了什么?
使用Java编译Clojure是否合法clojure.lang.Compiler.compile
?
我们的Java应用程序用于通过clojure.lang.Compiler.load
在具有proxy
宏的.clj源上使用来创建Clojure对象的实例.现在我们想用AOT编译这些对象gen-class
而不是proxy
.这样就可以移动.class文件了,我们稍后会实例化这些对象.
到目前为止我所管理的最好的是说服clojure.lang.Compiler.compile
我生成加载器类文件("my/domain/lib__init.class").但我似乎没有得到附带的.class文件,命名空间中的每个函数一个("my/domain/lib $ fnname__1234.class")和每个文件的存根类文件gen-class
.这是在沙箱中使用http://clojure.org/compilation上非常简单的第一个例子.我以为我正确设置了编译路径,并将其设置为类路径中的某些东西,但也许还存在一个问题.
在任何情况下,我们的实际应用程序都是基于RCP(Eclipse),这可能意味着他们将更多地根据OSGI类加载器类路径来计算.与此同时,我只是想知道clojure.lang.Compiler.compile
直接使用是否是一种有效的方法?
编辑:所以我现在得到它生成所有.class文件,但它需要各种未记录的初始化,这告诉我,方法clojure.lang.Compiler
是内部的.我必须将*compile-path*和*compile-files*设置为true,例如
RT.var("clojure.core", "*compile-files*").bindRoot(true);
Run Code Online (Sandbox Code Playgroud)