def launch_sidebyside_diff(self): """ Launch diff as a side-by-side comparison using our comparison tool """ action = GitAction( self.git, notification=False, run_in_thread=False ) if self.revision1.kind != "WORKING": dest1 = self._build_export_path(1, self.revision1, self.path1) self.save_diff_to_file(dest1, action.run_single( self.git.show, self.path1, self.revision1 )) else: dest1 = self.path1 if self.revision2.kind != "WORKING": dest2 = self._build_export_path(2, self.revision2, self.path2) self.save_diff_to_file(dest2, action.run_single( self.git.show, self.path2, self.revision2 )) else: dest2 = self.path2 rabbitvcs.util.helper.launch_diff_tool(dest1, dest2)
def launch_unified_diff(self): """ Launch diff as a unified diff in a text editor or .diff viewer """ action = GitAction( self.git, notification=False, run_in_thread=False ) diff_text = action.run_single( self.git.diff, self.path1, self.revision1, self.path2, self.revision2 ) if diff_text is None: diff_text = "" fh = tempfile.mkstemp("-rabbitvcs-" + str(self.revision1)[:5] + "-" + str(self.revision2)[:5] + ".diff") os.write(fh[0], diff_text) os.close(fh[0]) rabbitvcs.util.helper.open_item(fh[1])