git-p4を使用してPERFORCEでgitを設定する際に問題が発生しました。この優れたブログ投稿( http://owenou.com/2011/03/23/git-up-perforce-with-git-p4.html )のすべての手順を完了した後、新しいファイルを追加したり、既存のファイルを変更したりします。ローカルのgitリポジトリにあるファイル。
リベースしようとすると、次のようになります。
$git-p4 rebase  
Traceback (most recent call last):  
  File "/home/user/bin/git-p4", line 2362, in <module>  
    main()  
  File "/home/user/bin/git-p4", line 2357, in main  
    if not cmd.run(args):  
  File "/home/user/bin/git-p4", line 2051, in run  
    sync.run([])  
  File "/home/user/bin/git-p4", line 2004, in run  
    changes = self.p4.p4ChangesForPaths(self.depotPaths, self.changeRange)  
  File "/home/user/bin/git-p4", line 232, in p4ChangesForPaths  
    assert depotPaths  
AssertionError  
変更をgitにコミットし、変更を
git p4 submit --verbose
p4リポジトリにプッシュするように実行した後、65534行の出力が得られます。
Reading pipe: git notes --ref=git-p4 show HEAD~1  
Reading pipe: git notes --ref=git-p4 show HEAD~2  
[...]  
Reading pipe: git notes --ref=git-p4 show HEAD~65534  
Traceback (most recent call last):  
  File "/home/wgorski/opt/git-p4/git-p4", line 2754, in <module>  
    main()  
  File "/home/wgorski/opt/git-p4/git-p4", line 2749, in main  
    if not cmd.run(args):  
  File "/home/wgorski/opt/git-p4/git-p4", line 1125, in run  
    self.depotPath = settings['depot-paths'][0]  
KeyError: 'depot-paths'  
言うまでもなく、変更はp4リポジトリにプッシュされません。