Version 3 of fcommit

Updated 2014-02-14 23:26:21 by pdt

fcommit

fcommit is a fairly simple Tk interface for use with Fossil repositories.

I've implemented a large proportion of the features I want, and have started to use it for my own projects. I need to add a few more features, use it a bit more, then I'll put the code on chiselapp.

The main GUI window is just about complete:

  • Modified tab shows modified files. Files can be included/excluded for a commit.
  • Files listed in the modified tab can be selected and reverted.
  • Extras tab shows extra files in checkout. Files can be selected for a commit.
  • Any files in the checkout that have been renamed or deleted appear in the missing tab. From there they can be selected as renamed or deleted for the next commit.
  • A commit to button selects branch to commit to, or can be used to specify a new branch.
  • Text area for commit message.
  • Clicking on the Commit... button brings up a confirm dialog with a small summary.

fcommit image


Toolbar currently includes:

  • Diff button - shows diff for current checkout.
  • History button - brings up a fairly simple history dialog, with clickable links to show diffs.
  • Update Current button.
  • Switch Checkout button.
  • Merge button.
  • Pull button.
  • Push button.

Additional toolbar buttons are for showing a menu, and for refreshing GUI. Currently the menu includes:

  • View -> Browser Interface, to show fossil ui.
  • View -> Log, to display a log of fossil commands executed by the GUI, and the resulting output.
  • New -> Empty Repository... brings up a dialog for creating a new repository.
  • New -> Cloned Repository... displays a dialog for cloning a repository.
  • New -> Source Tree... displays a dialog for checking out a new source tree.
  • New -> Imported Repository... will display a dialog for importing a GIT repository.
  • New -> Exported Repository... will display a dialog for exporting to a GIT repository.
  • Change Directory..., for changing working directory.
  • Ignore Files..., will show a dialog for managing which files in a source tree should be ignored.

The image below shows the fcommit history dialog, showing history for the Fossil project.

fcommit history image


Below is an image of the switch checkout dialog. For branches and tags, a combobox is displayed in the dialog, where the branch or tag may be typed or selected. Version ID can also be entered. Alternatively a version can be selected in the history dialog, then when the switch checkout toolbar button is pressed, the switch checkout dialog opens showing checkout by ID with the text field already filled in. Pressing the dialog's checkout button completes the action.

fcommit switch branch image