Everything I need to do with Git, I use in GitKraken . It is a tool with several interface (if not all) of Git, several facilities and speed to perform Git activities, compared to bash
, such as:
auto-stash
of your files, if you have changes to branch exchange;
Easy to follow GitFlow ;
Standard merges messages throughout the project;
Easy to click on buttons like undo
, redo
, pull
, branch
, stash
, pop
;
Improved visibility of all flow, as well as history of commits
, compared to gitk
;
Easy to execute commits
, and check each line that was added / removed;
Easy to ignore files and / or select only a few files for commitar
;
Easy to discard all changes made to multiple files.
These are the main ones I use, but there are more features ...
Regarding the merge, it has a merge tool
that divides the screen into two, where on the left is your changed file, and on the right is the file that is coming from develop, in the case of a merge of your branch na develop. You can then select a block, or click line by line, and at the bottom the final file is shown.
All conflicts have been made, just click on the% of the% that the merge is performed, then the Commit and merge files
can be performed with a simple click of the button.
Below is an image that demonstrates this better:
Thereisalsoanothersimilartool, Sourcetree . It is similar to GitKraken, however the downside is that there is no Linux, only Mac or Windows, so I particularly did not use this.
Nowadays also the editors themselves, such as Visual Studio Code , there is a very own tool to resolve conflicts with push
, where you can either click the merge
, or make the change manually, with better visibility on the lines that are coming from the branch that you are doing links
, and the branch that you are on.
Here's an image below that shows this better: