|
|
|
|
|
by cytzol
2529 days ago
|
|
I use a Git GUI, not because it's more efficient or because it enables better workflows, but it's more comfortable for me. - When I'm browsing the history, I can scroll up and down the list of commits and see the diff of each one by clicking on it. - When I'm cherry-picking a commit, I can just drag the commit onto the branch. - When I'm modifying a branch or a remote, I can right-click on it and go to Delete or Rename. - When I'm resetting to an old commit, I can right-click on it and go to Reset. Basically, I like to refer to things by pointing to them, and interacting by clicking or dragging. All of those things I just mentioned are trivial using the command-line — with the exception of modifying a branch or remote, you just have to write the git subcommand and its arguments. But having a Git resource as a tangible "thing" on the end of my mouse cursor makes me feel more calm using Git. I want to reset to that commit. I want to delete this branch. I want to cherry-pick this commit onto that branch. I want to see the diff for this commit. I can't really describe it but I feel more "connected" interacting with a repository like this, than on the command-line where I have to run commands and use the output of previous commands in new commands. |
|
Everything else you described is easily available via already-existing CLI wrappers for git. I described my workflow in another comment[0] here. It is incredibly easy to search for specific commits and branches with instant live-previews using tools like forgit, and these tools are only possible because of the composability of command-line programs.
[0]: https://news.ycombinator.com/item?id=20516798