在尝试挑选时,我陷入了一个奇怪的循环中。这就是我的工作,以及问题所在。
我有两个分支:主线和 temp 。我想从主线到临时选择一个特定的提交。我是这样做的。
def main():
start = timer()
result = []
search = input ("Please enter Dork String(<dork - no include inurl:> <extra-terms>):")
pages = int(input ("how many URL's would you like?:"))
pages = pages / 10
processes = int(input ("How many threads (<= 8):"))
make_request = partial( google, search )
pagelist = [ str(x*10) for x in range( 0, int(pages) ) ]
#Multithreads ??
with Pool(processes) as p:
tmp = p.map(make_request, pagelist)
for x in tmp:
result.extend(x)
result = list( set( result ) )
print ( *result, sep = '/n' )
#stats
print ( '\nTotal URLs Scraped : %s ' % str( len( result ) ) )
print ( 'Script Execution Time : %s ' % ( timer() - start, ) )
git checkout temp
git cherry pick <commit sha>
我从2)重新运行命令,然后获取:Segmentation fault: 11
=============================================== =====================
现在我运行Unable to create ...git/index.lock': File exists
再试一次rm -f ./.git/index.lock
现在我明白了:
错误:以下未跟踪的工作树文件将被合并覆盖: myfile.java
...对于一个甚至不存在的文件。之前我曾经使用它,但我将其重命名,因此该名称下的文件不在存储库中。
git cherry pick <commit sha>
,现在我在未跟踪文件下看到 myfile.java 文件。现在它甚至出现在编辑器中。我可以从编辑器中删除它,但不能从git存储库中删除它。我得到git status
pathspec 'myfile.java' did not match any files
,然后又回到 3)。 这里发生了什么,我怎么才能做我的挑选? :d
答案 0 :(得分:0)
我不知道你为什么会出现分段错误。我建议你确保使用最新的git版本。
樱桃选择的另一种方法是从提交中创建一个补丁并应用它:
git checkout temp
git format-patch -1 <commit sha>
git apply 0001.....patch
答案 1 :(得分:0)
升级到自制程序git 2.11.1为我解决了这个问题。
基于输出消息和this pull request上针对git-for-windows的对话,后来在上游提升,而mailing list thread由于某种原因显示refresh_cache_entry()
的返回值为null导致分段错误(在我的情况下,我正在挑选的路径不存在于我所在的分支上)
这是我发生的事情:
$ git cherry-pick d4c26fc1
Segmentation fault: 11
$ git cherry-pick --abort
error: no cherry-pick or revert in progress
fatal: cherry-pick failed
$ rm .git/index.lock
$ brew upgrade git
Updating Homebrew...
...
==> Summary
/usr/local/Cellar/git/2.11.1: 1,456 files, 32.4M
$ git cherry-pick d4c26fc1
error: addinfo_cache failed for path 'foo/bar/baz'
error: could not apply d4c26fc... Some commit subject
hint: after resolving the conflicts, mark the corrected paths
hint: with 'git add <paths>' or 'git rm <paths>'
hint: and commit the result with 'git commit'