MCPcopy Index your code
hub / github.com/initialcommit-com/git-sim / check_merge_conflict

Method check_merge_conflict

src/git_sim/merge.py:167–189  ·  view source on GitHub ↗
(self, branch1, branch2)

Source from the content-addressed store, hash-verified

165 pass
166
167 def check_merge_conflict(self, branch1, branch2):
168 git_root = self.repo.git.rev_parse("--show-toplevel")
169 repo_name = os.path.basename(self.repo.working_dir)
170 new_dir = os.path.join(tempfile.gettempdir(), "git_sim", repo_name)
171
172 orig_repo = self.repo
173 orig_remotes = self.repo.remotes
174 self.repo = git.Repo.clone_from(git_root, new_dir, no_hardlinks=True)
175 self.repo.git.checkout(branch2)
176 self.repo.git.checkout(branch1)
177
178 try:
179 self.repo.git.merge(branch2)
180 except git.GitCommandError as e:
181 if "CONFLICT" in e.stdout:
182 self.conflicted_files = []
183 self.n = 5
184 for entry in self.repo.index.entries:
185 if len(entry) == 2 and entry[1] > 0:
186 self.conflicted_files.append(entry[0])
187 return 1, new_dir
188 self.repo = orig_repo
189 return 0, new_dir
190
191 # Override to display conflicted filenames
192 def populate_zones(

Callers 1

constructMethod · 0.95

Calls

no outgoing calls

Tested by

no test coverage detected