eric6/Documentation/Source/eric6.Plugins.VcsPlugins.vcsGit.GitMergeDialog.html

branch
maintenance
changeset 7286
7eb04391adf7
parent 7273
391d6b7b1eff
child 7989
a21d673a8f99
equal deleted inserted replaced
7226:babe80d84a3e 7286:7eb04391adf7
16 16
17 a { color: #BA6D36; } 17 a { color: #BA6D36; }
18 18
19 </style> 19 </style>
20 </head> 20 </head>
21 <body><a NAME="top" ID="top"></a> 21 <body>
22 <a NAME="top" ID="top"></a>
22 <h1>eric6.Plugins.VcsPlugins.vcsGit.GitMergeDialog</h1> 23 <h1>eric6.Plugins.VcsPlugins.vcsGit.GitMergeDialog</h1>
24
23 <p> 25 <p>
24 Module implementing a dialog to enter the merge data. 26 Module implementing a dialog to enter the merge data.
25 </p> 27 </p>
26 <h3>Global Attributes</h3> 28 <h3>Global Attributes</h3>
29
27 <table> 30 <table>
28 <tr><td>None</td></tr> 31 <tr><td>None</td></tr>
29 </table> 32 </table>
30 <h3>Classes</h3> 33 <h3>Classes</h3>
31 <table> 34
35 <table>
36
32 <tr> 37 <tr>
33 <td><a href="#GitMergeDialog">GitMergeDialog</a></td> 38 <td><a href="#GitMergeDialog">GitMergeDialog</a></td>
34 <td>Class implementing a dialog to enter the merge data.</td> 39 <td>Class implementing a dialog to enter the merge data.</td>
35 </tr> 40 </tr>
36 </table> 41 </table>
37 <h3>Functions</h3> 42 <h3>Functions</h3>
38 <table> 43
39 <tr><td>None</td></tr> 44 <table>
40 </table> 45 <tr><td>None</td></tr>
41 <hr /><hr /> 46 </table>
47 <hr />
48 <hr />
42 <a NAME="GitMergeDialog" ID="GitMergeDialog"></a> 49 <a NAME="GitMergeDialog" ID="GitMergeDialog"></a>
43 <h2>GitMergeDialog</h2> 50 <h2>GitMergeDialog</h2>
51
44 <p> 52 <p>
45 Class implementing a dialog to enter the merge data. 53 Class implementing a dialog to enter the merge data.
46 </p> 54 </p>
47 <h3>Derived from</h3> 55 <h3>Derived from</h3>
48 QDialog, Ui_GitMergeDialog 56 QDialog, Ui_GitMergeDialog
49 <h3>Class Attributes</h3> 57 <h3>Class Attributes</h3>
58
50 <table> 59 <table>
51 <tr><td>None</td></tr> 60 <tr><td>None</td></tr>
52 </table> 61 </table>
53 <h3>Class Methods</h3> 62 <h3>Class Methods</h3>
63
54 <table> 64 <table>
55 <tr><td>None</td></tr> 65 <tr><td>None</td></tr>
56 </table> 66 </table>
57 <h3>Methods</h3> 67 <h3>Methods</h3>
58 <table> 68
69 <table>
70
59 <tr> 71 <tr>
60 <td><a href="#GitMergeDialog.__init__">GitMergeDialog</a></td> 72 <td><a href="#GitMergeDialog.__init__">GitMergeDialog</a></td>
61 <td>Constructor</td> 73 <td>Constructor</td>
62 </tr><tr> 74 </tr>
75 <tr>
63 <td><a href="#GitMergeDialog.__generateDefaultCommitMessage">__generateDefaultCommitMessage</a></td> 76 <td><a href="#GitMergeDialog.__generateDefaultCommitMessage">__generateDefaultCommitMessage</a></td>
64 <td>Private slot to generate a default commit message based on the data entered.</td> 77 <td>Private slot to generate a default commit message based on the data entered.</td>
65 </tr><tr> 78 </tr>
79 <tr>
66 <td><a href="#GitMergeDialog.__updateOK">__updateOK</a></td> 80 <td><a href="#GitMergeDialog.__updateOK">__updateOK</a></td>
67 <td>Private slot to update the OK button.</td> 81 <td>Private slot to update the OK button.</td>
68 </tr><tr> 82 </tr>
83 <tr>
69 <td><a href="#GitMergeDialog.getParameters">getParameters</a></td> 84 <td><a href="#GitMergeDialog.getParameters">getParameters</a></td>
70 <td>Public method to retrieve the merge data.</td> 85 <td>Public method to retrieve the merge data.</td>
71 </tr><tr> 86 </tr>
87 <tr>
72 <td><a href="#GitMergeDialog.on_branchButton_toggled">on_branchButton_toggled</a></td> 88 <td><a href="#GitMergeDialog.on_branchButton_toggled">on_branchButton_toggled</a></td>
73 <td>Private slot to handle changes of the Branch select button.</td> 89 <td>Private slot to handle changes of the Branch select button.</td>
74 </tr><tr> 90 </tr>
91 <tr>
75 <td><a href="#GitMergeDialog.on_branchCombo_editTextChanged">on_branchCombo_editTextChanged</a></td> 92 <td><a href="#GitMergeDialog.on_branchCombo_editTextChanged">on_branchCombo_editTextChanged</a></td>
76 <td>Private slot to handle changes of the Branch combo.</td> 93 <td>Private slot to handle changes of the Branch combo.</td>
77 </tr><tr> 94 </tr>
95 <tr>
78 <td><a href="#GitMergeDialog.on_commitGroupBox_toggled">on_commitGroupBox_toggled</a></td> 96 <td><a href="#GitMergeDialog.on_commitGroupBox_toggled">on_commitGroupBox_toggled</a></td>
79 <td>Private slot to handle changes of the Commit select group.</td> 97 <td>Private slot to handle changes of the Commit select group.</td>
80 </tr><tr> 98 </tr>
99 <tr>
81 <td><a href="#GitMergeDialog.on_commitMessageEdit_textChanged">on_commitMessageEdit_textChanged</a></td> 100 <td><a href="#GitMergeDialog.on_commitMessageEdit_textChanged">on_commitMessageEdit_textChanged</a></td>
82 <td>Private slot to handle changes of the commit message edit.</td> 101 <td>Private slot to handle changes of the commit message edit.</td>
83 </tr><tr> 102 </tr>
103 <tr>
84 <td><a href="#GitMergeDialog.on_idButton_toggled">on_idButton_toggled</a></td> 104 <td><a href="#GitMergeDialog.on_idButton_toggled">on_idButton_toggled</a></td>
85 <td>Private slot to handle changes of the ID select button.</td> 105 <td>Private slot to handle changes of the ID select button.</td>
86 </tr><tr> 106 </tr>
107 <tr>
87 <td><a href="#GitMergeDialog.on_idEdit_textChanged">on_idEdit_textChanged</a></td> 108 <td><a href="#GitMergeDialog.on_idEdit_textChanged">on_idEdit_textChanged</a></td>
88 <td>Private slot to handle changes of the Commit edit.</td> 109 <td>Private slot to handle changes of the Commit edit.</td>
89 </tr><tr> 110 </tr>
111 <tr>
90 <td><a href="#GitMergeDialog.on_noneButton_toggled">on_noneButton_toggled</a></td> 112 <td><a href="#GitMergeDialog.on_noneButton_toggled">on_noneButton_toggled</a></td>
91 <td>Private slot to handle changes of the None select button.</td> 113 <td>Private slot to handle changes of the None select button.</td>
92 </tr><tr> 114 </tr>
115 <tr>
93 <td><a href="#GitMergeDialog.on_remoteBranchButton_toggled">on_remoteBranchButton_toggled</a></td> 116 <td><a href="#GitMergeDialog.on_remoteBranchButton_toggled">on_remoteBranchButton_toggled</a></td>
94 <td>Private slot to handle changes of the Remote Branch select button.</td> 117 <td>Private slot to handle changes of the Remote Branch select button.</td>
95 </tr><tr> 118 </tr>
119 <tr>
96 <td><a href="#GitMergeDialog.on_remoteBranchCombo_editTextChanged">on_remoteBranchCombo_editTextChanged</a></td> 120 <td><a href="#GitMergeDialog.on_remoteBranchCombo_editTextChanged">on_remoteBranchCombo_editTextChanged</a></td>
97 <td>Private slot to handle changes of the Remote Branch combo.</td> 121 <td>Private slot to handle changes of the Remote Branch combo.</td>
98 </tr><tr> 122 </tr>
123 <tr>
99 <td><a href="#GitMergeDialog.on_tagButton_toggled">on_tagButton_toggled</a></td> 124 <td><a href="#GitMergeDialog.on_tagButton_toggled">on_tagButton_toggled</a></td>
100 <td>Private slot to handle changes of the Tag select button.</td> 125 <td>Private slot to handle changes of the Tag select button.</td>
101 </tr><tr> 126 </tr>
127 <tr>
102 <td><a href="#GitMergeDialog.on_tagCombo_editTextChanged">on_tagCombo_editTextChanged</a></td> 128 <td><a href="#GitMergeDialog.on_tagCombo_editTextChanged">on_tagCombo_editTextChanged</a></td>
103 <td>Private slot to handle changes of the Tag combo.</td> 129 <td>Private slot to handle changes of the Tag combo.</td>
104 </tr> 130 </tr>
105 </table> 131 </table>
106 <h3>Static Methods</h3> 132 <h3>Static Methods</h3>
107 <table> 133
108 <tr><td>None</td></tr> 134 <table>
109 </table> 135 <tr><td>None</td></tr>
136 </table>
137
110 <a NAME="GitMergeDialog.__init__" ID="GitMergeDialog.__init__"></a> 138 <a NAME="GitMergeDialog.__init__" ID="GitMergeDialog.__init__"></a>
111 <h4>GitMergeDialog (Constructor)</h4> 139 <h4>GitMergeDialog (Constructor)</h4>
112 <b>GitMergeDialog</b>(<i>tagsList, branchesList, currentBranch, remoteBranchesList, parent=None</i>) 140 <b>GitMergeDialog</b>(<i>tagsList, branchesList, currentBranch, remoteBranchesList, parent=None</i>)
141
113 <p> 142 <p>
114 Constructor 143 Constructor
115 </p><dl> 144 </p>
145 <dl>
146
116 <dt><i>tagsList</i></dt> 147 <dt><i>tagsList</i></dt>
117 <dd> 148 <dd>
118 list of tags (list of strings) 149 list of tags (list of strings)
119 </dd><dt><i>branchesList</i></dt> 150 </dd>
151 <dt><i>branchesList</i></dt>
120 <dd> 152 <dd>
121 list of branches (list of strings) 153 list of branches (list of strings)
122 </dd><dt><i>currentBranch</i></dt> 154 </dd>
155 <dt><i>currentBranch</i></dt>
123 <dd> 156 <dd>
124 name of the current branch (string) 157 name of the current branch (string)
125 </dd><dt><i>remoteBranchesList</i></dt> 158 </dd>
159 <dt><i>remoteBranchesList</i></dt>
126 <dd> 160 <dd>
127 list of remote branches (list of strings) 161 list of remote branches (list of strings)
128 </dd><dt><i>parent</i></dt> 162 </dd>
163 <dt><i>parent</i></dt>
129 <dd> 164 <dd>
130 reference to the parent widget (QWidget) 165 reference to the parent widget (QWidget)
131 </dd> 166 </dd>
132 </dl><a NAME="GitMergeDialog.__generateDefaultCommitMessage" ID="GitMergeDialog.__generateDefaultCommitMessage"></a> 167 </dl>
168 <a NAME="GitMergeDialog.__generateDefaultCommitMessage" ID="GitMergeDialog.__generateDefaultCommitMessage"></a>
133 <h4>GitMergeDialog.__generateDefaultCommitMessage</h4> 169 <h4>GitMergeDialog.__generateDefaultCommitMessage</h4>
134 <b>__generateDefaultCommitMessage</b>(<i></i>) 170 <b>__generateDefaultCommitMessage</b>(<i></i>)
171
135 <p> 172 <p>
136 Private slot to generate a default commit message based on the 173 Private slot to generate a default commit message based on the
137 data entered. 174 data entered.
138 </p><a NAME="GitMergeDialog.__updateOK" ID="GitMergeDialog.__updateOK"></a> 175 </p>
176 <a NAME="GitMergeDialog.__updateOK" ID="GitMergeDialog.__updateOK"></a>
139 <h4>GitMergeDialog.__updateOK</h4> 177 <h4>GitMergeDialog.__updateOK</h4>
140 <b>__updateOK</b>(<i></i>) 178 <b>__updateOK</b>(<i></i>)
179
141 <p> 180 <p>
142 Private slot to update the OK button. 181 Private slot to update the OK button.
143 </p><a NAME="GitMergeDialog.getParameters" ID="GitMergeDialog.getParameters"></a> 182 </p>
183 <a NAME="GitMergeDialog.getParameters" ID="GitMergeDialog.getParameters"></a>
144 <h4>GitMergeDialog.getParameters</h4> 184 <h4>GitMergeDialog.getParameters</h4>
145 <b>getParameters</b>(<i></i>) 185 <b>getParameters</b>(<i></i>)
186
146 <p> 187 <p>
147 Public method to retrieve the merge data. 188 Public method to retrieve the merge data.
148 </p><dl> 189 </p>
190 <dl>
149 <dt>Returns:</dt> 191 <dt>Returns:</dt>
150 <dd> 192 <dd>
151 tuple naming the revision, a flag indicating that the merge 193 tuple naming the revision, a flag indicating that the merge
152 shall be committed, the commit message, a flag indicating that a 194 shall be committed, the commit message, a flag indicating that a
153 log summary shall be appended and a flag indicating to show diff 195 log summary shall be appended and a flag indicating to show diff
154 statistics at the end of the merge (string, boolean, string, 196 statistics at the end of the merge (string, boolean, string,
155 boolean, boolean) 197 boolean, boolean)
156 </dd> 198 </dd>
157 </dl><a NAME="GitMergeDialog.on_branchButton_toggled" ID="GitMergeDialog.on_branchButton_toggled"></a> 199 </dl>
200 <a NAME="GitMergeDialog.on_branchButton_toggled" ID="GitMergeDialog.on_branchButton_toggled"></a>
158 <h4>GitMergeDialog.on_branchButton_toggled</h4> 201 <h4>GitMergeDialog.on_branchButton_toggled</h4>
159 <b>on_branchButton_toggled</b>(<i>checked</i>) 202 <b>on_branchButton_toggled</b>(<i>checked</i>)
203
160 <p> 204 <p>
161 Private slot to handle changes of the Branch select button. 205 Private slot to handle changes of the Branch select button.
162 </p><dl> 206 </p>
163 <dt><i>checked</i></dt> 207 <dl>
164 <dd> 208
165 state of the button (boolean) 209 <dt><i>checked</i></dt>
166 </dd> 210 <dd>
167 </dl><a NAME="GitMergeDialog.on_branchCombo_editTextChanged" ID="GitMergeDialog.on_branchCombo_editTextChanged"></a> 211 state of the button (boolean)
212 </dd>
213 </dl>
214 <a NAME="GitMergeDialog.on_branchCombo_editTextChanged" ID="GitMergeDialog.on_branchCombo_editTextChanged"></a>
168 <h4>GitMergeDialog.on_branchCombo_editTextChanged</h4> 215 <h4>GitMergeDialog.on_branchCombo_editTextChanged</h4>
169 <b>on_branchCombo_editTextChanged</b>(<i>txt</i>) 216 <b>on_branchCombo_editTextChanged</b>(<i>txt</i>)
217
170 <p> 218 <p>
171 Private slot to handle changes of the Branch combo. 219 Private slot to handle changes of the Branch combo.
172 </p><dl> 220 </p>
221 <dl>
222
173 <dt><i>txt</i></dt> 223 <dt><i>txt</i></dt>
174 <dd> 224 <dd>
175 text of the combo (string) 225 text of the combo (string)
176 </dd> 226 </dd>
177 </dl><a NAME="GitMergeDialog.on_commitGroupBox_toggled" ID="GitMergeDialog.on_commitGroupBox_toggled"></a> 227 </dl>
228 <a NAME="GitMergeDialog.on_commitGroupBox_toggled" ID="GitMergeDialog.on_commitGroupBox_toggled"></a>
178 <h4>GitMergeDialog.on_commitGroupBox_toggled</h4> 229 <h4>GitMergeDialog.on_commitGroupBox_toggled</h4>
179 <b>on_commitGroupBox_toggled</b>(<i>checked</i>) 230 <b>on_commitGroupBox_toggled</b>(<i>checked</i>)
231
180 <p> 232 <p>
181 Private slot to handle changes of the Commit select group. 233 Private slot to handle changes of the Commit select group.
182 </p><dl> 234 </p>
235 <dl>
236
183 <dt><i>checked</i></dt> 237 <dt><i>checked</i></dt>
184 <dd> 238 <dd>
185 state of the group (boolean) 239 state of the group (boolean)
186 </dd> 240 </dd>
187 </dl><a NAME="GitMergeDialog.on_commitMessageEdit_textChanged" ID="GitMergeDialog.on_commitMessageEdit_textChanged"></a> 241 </dl>
242 <a NAME="GitMergeDialog.on_commitMessageEdit_textChanged" ID="GitMergeDialog.on_commitMessageEdit_textChanged"></a>
188 <h4>GitMergeDialog.on_commitMessageEdit_textChanged</h4> 243 <h4>GitMergeDialog.on_commitMessageEdit_textChanged</h4>
189 <b>on_commitMessageEdit_textChanged</b>(<i></i>) 244 <b>on_commitMessageEdit_textChanged</b>(<i></i>)
245
190 <p> 246 <p>
191 Private slot to handle changes of the commit message edit. 247 Private slot to handle changes of the commit message edit.
192 </p><a NAME="GitMergeDialog.on_idButton_toggled" ID="GitMergeDialog.on_idButton_toggled"></a> 248 </p>
249 <a NAME="GitMergeDialog.on_idButton_toggled" ID="GitMergeDialog.on_idButton_toggled"></a>
193 <h4>GitMergeDialog.on_idButton_toggled</h4> 250 <h4>GitMergeDialog.on_idButton_toggled</h4>
194 <b>on_idButton_toggled</b>(<i>checked</i>) 251 <b>on_idButton_toggled</b>(<i>checked</i>)
252
195 <p> 253 <p>
196 Private slot to handle changes of the ID select button. 254 Private slot to handle changes of the ID select button.
197 </p><dl> 255 </p>
198 <dt><i>checked</i></dt> 256 <dl>
199 <dd> 257
200 state of the button (boolean) 258 <dt><i>checked</i></dt>
201 </dd> 259 <dd>
202 </dl><a NAME="GitMergeDialog.on_idEdit_textChanged" ID="GitMergeDialog.on_idEdit_textChanged"></a> 260 state of the button (boolean)
261 </dd>
262 </dl>
263 <a NAME="GitMergeDialog.on_idEdit_textChanged" ID="GitMergeDialog.on_idEdit_textChanged"></a>
203 <h4>GitMergeDialog.on_idEdit_textChanged</h4> 264 <h4>GitMergeDialog.on_idEdit_textChanged</h4>
204 <b>on_idEdit_textChanged</b>(<i>txt</i>) 265 <b>on_idEdit_textChanged</b>(<i>txt</i>)
266
205 <p> 267 <p>
206 Private slot to handle changes of the Commit edit. 268 Private slot to handle changes of the Commit edit.
207 </p><dl> 269 </p>
270 <dl>
271
208 <dt><i>txt</i></dt> 272 <dt><i>txt</i></dt>
209 <dd> 273 <dd>
210 text of the edit (string) 274 text of the edit (string)
211 </dd> 275 </dd>
212 </dl><a NAME="GitMergeDialog.on_noneButton_toggled" ID="GitMergeDialog.on_noneButton_toggled"></a> 276 </dl>
277 <a NAME="GitMergeDialog.on_noneButton_toggled" ID="GitMergeDialog.on_noneButton_toggled"></a>
213 <h4>GitMergeDialog.on_noneButton_toggled</h4> 278 <h4>GitMergeDialog.on_noneButton_toggled</h4>
214 <b>on_noneButton_toggled</b>(<i>checked</i>) 279 <b>on_noneButton_toggled</b>(<i>checked</i>)
280
215 <p> 281 <p>
216 Private slot to handle changes of the None select button. 282 Private slot to handle changes of the None select button.
217 </p><dl> 283 </p>
218 <dt><i>checked</i></dt> 284 <dl>
219 <dd> 285
220 state of the button (boolean) 286 <dt><i>checked</i></dt>
221 </dd> 287 <dd>
222 </dl><a NAME="GitMergeDialog.on_remoteBranchButton_toggled" ID="GitMergeDialog.on_remoteBranchButton_toggled"></a> 288 state of the button (boolean)
289 </dd>
290 </dl>
291 <a NAME="GitMergeDialog.on_remoteBranchButton_toggled" ID="GitMergeDialog.on_remoteBranchButton_toggled"></a>
223 <h4>GitMergeDialog.on_remoteBranchButton_toggled</h4> 292 <h4>GitMergeDialog.on_remoteBranchButton_toggled</h4>
224 <b>on_remoteBranchButton_toggled</b>(<i>checked</i>) 293 <b>on_remoteBranchButton_toggled</b>(<i>checked</i>)
294
225 <p> 295 <p>
226 Private slot to handle changes of the Remote Branch select button. 296 Private slot to handle changes of the Remote Branch select button.
227 </p><dl> 297 </p>
228 <dt><i>checked</i></dt> 298 <dl>
229 <dd> 299
230 state of the button (boolean) 300 <dt><i>checked</i></dt>
231 </dd> 301 <dd>
232 </dl><a NAME="GitMergeDialog.on_remoteBranchCombo_editTextChanged" ID="GitMergeDialog.on_remoteBranchCombo_editTextChanged"></a> 302 state of the button (boolean)
303 </dd>
304 </dl>
305 <a NAME="GitMergeDialog.on_remoteBranchCombo_editTextChanged" ID="GitMergeDialog.on_remoteBranchCombo_editTextChanged"></a>
233 <h4>GitMergeDialog.on_remoteBranchCombo_editTextChanged</h4> 306 <h4>GitMergeDialog.on_remoteBranchCombo_editTextChanged</h4>
234 <b>on_remoteBranchCombo_editTextChanged</b>(<i>txt</i>) 307 <b>on_remoteBranchCombo_editTextChanged</b>(<i>txt</i>)
308
235 <p> 309 <p>
236 Private slot to handle changes of the Remote Branch combo. 310 Private slot to handle changes of the Remote Branch combo.
237 </p><dl> 311 </p>
312 <dl>
313
238 <dt><i>txt</i></dt> 314 <dt><i>txt</i></dt>
239 <dd> 315 <dd>
240 text of the combo (string) 316 text of the combo (string)
241 </dd> 317 </dd>
242 </dl><a NAME="GitMergeDialog.on_tagButton_toggled" ID="GitMergeDialog.on_tagButton_toggled"></a> 318 </dl>
319 <a NAME="GitMergeDialog.on_tagButton_toggled" ID="GitMergeDialog.on_tagButton_toggled"></a>
243 <h4>GitMergeDialog.on_tagButton_toggled</h4> 320 <h4>GitMergeDialog.on_tagButton_toggled</h4>
244 <b>on_tagButton_toggled</b>(<i>checked</i>) 321 <b>on_tagButton_toggled</b>(<i>checked</i>)
322
245 <p> 323 <p>
246 Private slot to handle changes of the Tag select button. 324 Private slot to handle changes of the Tag select button.
247 </p><dl> 325 </p>
248 <dt><i>checked</i></dt> 326 <dl>
249 <dd> 327
250 state of the button (boolean) 328 <dt><i>checked</i></dt>
251 </dd> 329 <dd>
252 </dl><a NAME="GitMergeDialog.on_tagCombo_editTextChanged" ID="GitMergeDialog.on_tagCombo_editTextChanged"></a> 330 state of the button (boolean)
331 </dd>
332 </dl>
333 <a NAME="GitMergeDialog.on_tagCombo_editTextChanged" ID="GitMergeDialog.on_tagCombo_editTextChanged"></a>
253 <h4>GitMergeDialog.on_tagCombo_editTextChanged</h4> 334 <h4>GitMergeDialog.on_tagCombo_editTextChanged</h4>
254 <b>on_tagCombo_editTextChanged</b>(<i>txt</i>) 335 <b>on_tagCombo_editTextChanged</b>(<i>txt</i>)
336
255 <p> 337 <p>
256 Private slot to handle changes of the Tag combo. 338 Private slot to handle changes of the Tag combo.
257 </p><dl> 339 </p>
340 <dl>
341
258 <dt><i>txt</i></dt> 342 <dt><i>txt</i></dt>
259 <dd> 343 <dd>
260 text of the combo (string) 344 text of the combo (string)
261 </dd> 345 </dd>
262 </dl> 346 </dl>

eric ide

mercurial