I am super thrilled to announce the release of our next brand new product here at RemObjects: GitBrowser.

GitBrowser is a native Git version control client for the Mac that aims to be easy and comfortable to use for beginners and Git experts alike, and to make the most common day-to-day version control tasks of developers not just easy, but fun.

Like our other tools, GitBrowser focuses on not getting in your way, and being lightweight, as well as intuitive and quick to use. Is has a major focus on working with multiple (dare I say, many) different Git repositories at once – a main feature I found lacking in most, if not all, other popular Git clients, but it will still be a faithful companion if you only work on one or two Git repositories at a time.

Welcome to GitBrowser

When you first start GitBrowser, it will ask you to add one or more local Git repositories to it. You can do so with the "Browse..." button on the Welcome sheet, or you can drag your folders in from Finder (or anywhere else) to the sidebar, at any time.

The sidebar always gives easy access to all the repositories you work with. You can arrange them in groups, sort them as you like, and even give them custom names. Selecting a repository in the sidebar immediately activates it and allows you to work with it. And you can even perform actions on any repository (active or not) from the context menu. Of course, you can hide and show the sidebar by pressing ⌘1, at any time.

The center column of GitBrowser shows the version history of your repository. All commits of your current branch are listed, with local commits that still need to be pushed shown in bold at the top, and any remote commits you have yet to pull shown in italic, above them. In addition to date color-coded author and commit message, the commit log also indicates any tags, and highlights merge commits in blue.

Select any commit, and the right-hand pane of GitBrowser will show its details, with the list of files affected by the commit at the top, and an inline diff view of the selected file at the bottom. Switch between files to browse all the changes of a commit.

Of course, sometimes you want to explore a changed file in more detail. Simply double-click a file, and GitBrowser will open it for comparison in your favorite diff tool (currently supported are Araxis Merge – IMHO the gold standard of diff tools, and my personal favorite – as well as BBEdit (yes, BBEdit has a diff viewer built in!). More options will be added based on user feedback, so let us know what your favorite diff tool is!)

The commit log has one additional row at the very top, and that is your local changes. Depending on the local status of your work, it might show "No local changes.", or a summary of locally changed, added, or deleted files. Selecting this row will show you GitBrowser's staging area in the right-hand pane

The staging area looks very similar to when you were viewing a previous commit, but it instead shows your local changes and – well – allows you to stage them for commit. In the file list at the top, you will see all files that have local changes, as well as any new files that are not under version control yet. You can check or uncheck the checkbox at the very right to stage (or unstage) one or more files. You also have more options available – such as stashing away changes for later, in each file's right-click context menu.

If you select a file, you will see the local changes in the embedded diff view at the bottom, just as before. This make sit really easy to double-checkl them all before staging – a practice i highly recommend.And of course you can double-click the file to open itn in Araxis Merge or BBEdit, to explore the diff in more detail.

If a file has both staged and unstaged changes (e.g., you staged it, and then made more changes – indicated by the checkbox showing in intermediate state), it will open as a three-way diff in Araxis Merge, showing you the original, the staged changes, and your local changes compared.

To commit your staged files, simply type in a commit message and then click the button. You can also press ⌘Enter+Up to commit and push in one go.

Are you sometimes bored with writing commit messages from scratch? GitBrowser can do it for you! In the Settings window (⌘,) you can connect GitBrowser to your favorite AI account. Once you have done so, all you need to do is mark a file (or several) for staging, and GitBrowser will automatically get busy and, within a second or so, prefill the commit message field with a (usually pretty good!) summary of your changes. You can accept the message as is, tweak it, or, of course, just write your own to replace it.

GitBrowser can use OpenAI, Claude, Gemini, Grok and Mistral as AI provider, as well as a local LM Studio (same as CodeBot in Fire)

Some more niceties and small details...

  • You can press cursor-up/down in the commit message field to easily "recycle" one of your previous commit messages. Very handy if you're making multiple related commits, or following up on a previous change. (cursor-up/down works if the field is empty, or the current message is AI-generated). You can also right-click any commit in the commit log to reuse its message.
  • GitBrowser lets you easily pull all your repositories (or all in a group) from the "File" menu, or the sidebar's context menu. Nice when you come in in the morning and get up to date with what the rest of the team(s) have been up to.
  • GitBrowser finds Elements solutions in your repository and lets you easily open them in Fire from the context menu in the sidebar.
  • Press ^⌥⌘F or ^⌥⌘T at any time to open your repository folder in Finder or Terminal, respectively.
  • You can drag any file from GitBrowser to copy or open it. Dragging a file from a previous commit will automatucally extract that revision. You can also drag your repository folders from the sidebar, e.g. to open them in BBEdit or other folder-based tools.
  • The diff view shows tabs as 8 spaces. This is on purpose, as it makes it really stick out if your file accidentally mixes tabs and spaces form indentation (something that of course cannot happen if you use Fire ;).
  • You can swicth between local branches (and check out new remote ones) from the braches popup button in the toolbar. Local branches eill show in bold, if they are ahead of your current branch (i.e. has new stuff your).

... and much more.

In Summary

Version control – and let’s be honest, today that means Git – is (or should be) an essential part of every developer’s workflow, and it all stands and falls with having a great tool that makes version control easy and – dare I say – fun, rather than a chore.

For me, for the past three years, that tool has been GitBrowser, and I would not want to miss it. Which is why i am so excited to now be able to share it the rest if the world – and for free, no less.

Please remember: the goal of GitBrowser is to make the common, routine, every-day tasks of version control easy and intuitive. Pull, push, review tour changes and commit them, review what your team is up to, etc. It is not meant to be the and-all swiss army knife for all your advanced Git needs, and it currently does not replace falling back down to the Git command line for more complex and esoteric tasks – nor will it ever, probably.

As time goes by, we will add more and more functionality to it to make these common day-to-day tasks easier, and to cover more common tasks that GitBrowser currently maybe does not handle yet (includindg, yes, some very obvious ones still missing). Please let us known in the forums what you're missing, or what you'd like us to add.

Get Your Copy, Now!

GitBrowser is available now, as free download, at remobjects.com/gitbrowser. It is completely free, but it does require you to sign up for a free license, after a 30-pday trial period, available.

If you have any questions, suggestions, feedback or complaints, please let us know on our support forum, RemObjects Talk, at talk.remobjects.com/c/gitbrowser

I hope you enjoy using GitBrowser as much as I enjoyed creating (and using) it, every day!

Nov 14 marc hoffman b7f6b866707aff6ea80e0cf591377285bd781dfc GitBrowser: GitBrowser 1.0 📌 .237
...
2022 Nov marc hoffman bd7a07cfffe2b0c60f78951319c951b7f26f6ba1 GitBrowser app (wip)