Skip to content

Commit 1fd6a36

Browse files
committed
Display the merge message in index viewer
1 parent 45df59c commit 1fd6a36

2 files changed

Lines changed: 26 additions & 1 deletion

File tree

src/renderer/components/index-viewer.tsx

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,8 +48,21 @@ export class IndexViewer extends React.PureComponent<IndexViewerProps, IndexView
4848
this.handleSubmit = this.handleSubmit.bind(this);
4949
}
5050

51-
componentDidMount() {
51+
async componentDidMount() {
5252
this.getPatches();
53+
if (this.props.repoState === RepoState.Merge) {
54+
this.setState({
55+
summary: await this.props.repo.getMergeMessage()
56+
});
57+
}
58+
}
59+
60+
async componentDidUpdate(prevProps: IndexViewerProps) {
61+
if (prevProps.repoState !== this.props.repoState) {
62+
this.setState({
63+
summary: this.props.repoState === RepoState.Merge ? await this.props.repo.getMergeMessage() : ''
64+
});
65+
}
5366
}
5467

5568
handleUnstagedPatchSelect(patch: Git.ConvenientPatch) {

src/renderer/helpers/repo-wrapper.ts

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -563,6 +563,18 @@ export class RepoWrapper {
563563
}
564564
}
565565

566+
async getMergeMessage() {
567+
return new Promise<string>((resolve, reject) => {
568+
fs.readFile(Path.join(this.path, 'MERGE_MSG'), (error, data) => {
569+
if (!error) {
570+
resolve(data.toString().split('\n')[0]);
571+
} else {
572+
reject(error);
573+
}
574+
});
575+
});
576+
}
577+
566578
async finishMerge(message: string) {
567579
try {
568580
const author = this.getSignature();

0 commit comments

Comments
 (0)