Tag: git新

git是否有像`svn propset svn:keywords`或pre / post-commit的钩子?

通过浏览git文档,我看不到任何类似于SVN的提交钩子或“propset”function的东西,比如,只要将文件提交到存储库,就可以更新文件中的版本号或版权声明。 git用户是否希望为这种function编写外部脚本(这看起来没有什么问题)或者我错过了一些明显的东西? 编辑 :只是要清楚,我更感兴趣,例如, svn propset svn:keywords "Author Date Id Revision" expl3.dtx 这里有一个string: $Id: expl3.dtx 780 2008-08-30 12:32:34Z morten $ 在发生提交时与相关信息保持同步。

加快最初的git-svn获取

我有一个很大的存储库,100,000多个修订版本,具有很高的分支因子。 使用git-svn初始获取完整的SVN仓库已经运行了大约2个月,直到修订版本60,000。 有什么办法可以加速这件事吗? 我已经经常杀死并重新启动取回,因为git-svn泄漏内存就像一个筛子。 传输发生在本地局域网上,所以链路速度不应该成为问题。 该存储库位于专用光纤通道arrays的专用机器上,所以服务器应该有很多的优点。 我唯一能想到的其他事情就是从SVN存储库的本地副本中进行克隆。 其他人在类似情况下做了什么?

git svn克隆格式错误的索引信息错误

当我运行git svn clone时,出现以下错误: 0 [main] perl 24432 cygwin_exception::open_stackdumpfile: Dumping stack trace to perl.exe.stackdump fatal: malformed index info 100644 362f1c18ceed5d593eb021432545685283a93 当我打开文件时,我看到以下内容: 例外:STATUS_ACCESS_VIOLATION在RIP = 0048360C537 RAX = 00000006039F81E0 RBX = 000000005219E248 RCX = 000000060003A3C0 RDX = 0000000000000000 RSI = 000000000000FDB4 RDI = 0000000000000004 R8 = 0000000000000000 R9 = 0000000000000000 R10 = 0000000000230000 R11 = 000000048D785FBA R12 = […]

我是否需要在裸回购版上运行git gc?

man git-gc没有一个明显的答案,我也没有与谷歌运气(虽然我可能刚刚使用了错误的search条件)。 我知道你应该偶尔在本地存储库上运行git gc来修剪悬挂的对象和压缩历史logging等,但是这是一个共享的裸存储库,容易受到这些相同的问题的影响? 如果重要的话,我们的工作stream程是多个开发人员从共享networking驱动器上拉出并推送到裸存储库。 “中央”仓库是用git init –bare –shared创build的。

如何在OS X上的Git文件名中处理亚洲字符

我使用的是US-English OS X 10.6.4,并尝试在Git存储库中存储具有亚洲字符的文件名。 好吧,让我们在Git工作树中创build一个这样的文件: $ touch どうもありがとうミスターロボット.txt Git将其显示为八进制转义的UTF-8格式: $ git version git version 1.7.3.1 $ git status # On branch master # # Initial commit # # Untracked files: # (use "git add <file>…" to include in what will be committed) # # "\343\201\250\343\202\231\343\201\206\343\202\202\343\201\202\343\202\212\343\201\213\343\202\231\343\201\250\343\201\206\343\203\237\343\202\271\343\202\277\343\203\274\343\203\255\343\203\233\343\202\231\343\203\203\343\203\210.txt" nothing added to commit but untracked files present (use "git […]

`git diff –patience`和`git diff –histogram`有什么区别?

这个较早的问题要求提供4种不同的Git diff策略之间的差异,但唯一解释的差异是myers和patience之间的差异,这在其他地方很好解释。 histogram策略如何工作? 它与patience什么区别? git-diff手册页只是说它“把耐心algorithm延伸到”支持低出现的共同元素“。 其他网页提到它更快,它来自JGit,但是它们没有解释它的algorithm或结果在哪里或如何与patience不同 。 在哪里可以find与patiencealgorithm相关的histogramalgorithm的描述 ,与Bram Cohen对patiencealgorithm的原始描述具有相同的细节水平? (如果只是执行性能问题,没有任何情况会产生不同的结果,为什么它不是作为patience的新后端来实现?

我可以将.git目录的回购目录移到它的父目录吗?

我有两个子目录每个都有一个回购,因此: PPP/ |–ABC/ | |–.git/ | |–AAA/ | | BBB/ | | CCC/ | |–DEF/ | |–.git/ | |–DDD/ | |–EEE/ 并想将它们合并成一个回购,所以,我会假设目录结构会是这样的: PPP/ |–.git/ |–ABC/ | |–AAA/ | |–BBB/ | |–CCC/ | |–DEF/ | |–DDD/ | |–EEE/ 这是可行的吗? 目前还有几个人在他们的机器上有回购。 这会使生活变得多复杂? 助教。

git rebase“被我们删除”和“被他们删除”

假设我是基础devise师,并且在文件中有冲突。 当然,这两个分支都有文件被删除。 所以当我解决冲突的时候,我看到deleted by us deleted by them deleted by us , deleted by them 。 它非常混乱。 有什么方法可以理解他们的意思吗? 他们是谁, 我们是谁? 或者,还有另一种方法来知道哪个分支被删除哪个文件? 就像打印分支名称一样?

使用terminal和MacFusion时出现GIT_DISCOVERY_ACROSS_FILESYSTEM问题

我使用MacFusion和OSXFuse(类似于MacFuse)通过SSH将我的服务器安装到我的办公室机器上。 当我进入我的rails的工作目录在服务器上,我看不到我的zsh提示符中的任何git信息。 如果我尝试一个git拉起源,我得到以下错误信息: fatal: Not a git repository (or any parent up to mount parent /Volumes) Stopping at filesystem boundary (GIT_DISCOVERY_ACROSS_FILESYSTEM not set) 我知道我可以ssh到服务器,但那么我不会失去zsh autocorrection&历史? 我不需要设置textmate和其他软件来使用SSH? 而且我不需要远程桌面来安装DMG等等吗? 所有这些似乎都有点麻烦。 有没有更好的方法来做我想做的事情? 否则有没有办法启用GIT_DISCOVERY_ACROSS_FILESYSTEM? PS – MacFusion也可以通过FTP挂载服务器 – 对SSH来说会更好吗?

Javascript的Git客户端

有没有Git的Javascript实现? 我想使用HTML5来创build一个丰富的JavaScript应用程序,并有想法,我可以使用git来跟踪数据的变化。 所以,我想知道是否有一个git客户端的JavaScript实现,或者可能通过发出POST请求来控制git存储库的某种方式。