Set up restarting for {pull,push}-grafts

rebase-i-autosquash-rebase-merges-fails
Elijah Newren 16 years ago
parent 3c9d232786
commit ba2faa9891

@ -85,8 +85,11 @@ class GraftFilter(object):
self.commit_count += 1
self._print_progress()
def _get_map_name(self, filename):
collabdir = os.path.join(self.collab_git_dir, 'refs', 'collab')
def _get_map_name(self, filename, include_git_dir = True):
if include_git_dir:
collabdir = os.path.join(self.collab_git_dir, 'refs', 'collab')
else:
collabdir = os.path.join('refs', 'collab')
if (filename == self.sourcemarks and self.source_repo == '.') or \
(filename == self.targetmarks and self.target_repo == '.'):
subname = 'localmap'
@ -125,8 +128,30 @@ class GraftFilter(object):
(file, self.targetmarks) = tempfile.mkstemp()
os.close(file)
else:
# FIXME: Need to get excludes, includes, sourcemarks, and targetmarks
pass
# Get the souremarks and targetmarks
(file, self.sourcemarks) = tempfile.mkstemp()
Popen(["git", "--git-dir=.", "cat-file", "-p",
self._get_map_name(self.sourcemarks, include_git_dir=False)],
stdout=file, cwd = self.collab_git_dir).wait()
os.close(file)
(file, self.targetmarks) = tempfile.mkstemp()
Popen(["git", "--git-dir=.", "cat-file", "-p",
self._get_map_name(self.targetmarks, include_git_dir=False)],
stdout=file, cwd = self.collab_git_dir).wait()
os.close(file)
# Get the excludes and includes, unless overridden
if self.excludes is None:
p = Popen(["git", "--git-dir=.", "cat-file", "-p",
"refs/collab/excludes"],
stdout=PIPE, cwd = self.collab_git_dir)
self.excludes = p.communicate()[0].split()
if self.includes is None:
p = Popen(["git", "--git-dir=.", "cat-file", "-p",
"refs/collab/includes"],
stdout=PIPE, cwd = self.collab_git_dir)
self.includes = p.communicate()[0].split()
def run(self):
self._setup_files_and_excludes()

Loading…
Cancel
Save