Support
Support copied to clipboard
Squash commits feature
Hello
I have replaced Gitkraken with this app because gitkraken has started to be really expensive and i really like how simple and quick it this app is. But one thing i am missing is squash option similarly implemented as in gitkraken where i can select multiple commits and squash them.
Hi Fabricio872, this is something I plan to add. In case you didn't already know: If you haven't already pushed the commits you want to squash, you can use the undo feature on those commits and then create a single commit.
Hello
I have played for a while with that undo feature and it works great for my use case but why it is not available after I push the changes? I think it could just create a changed local commit and then when I do push it could warn me if I want to force push because a commit with the same id already exists or something like that. Would it be too complicated to implement or is there some issue in the way I imagine GIT works? I am not very much of a GIT expert and I know that force pushing could break things if you are working in a team but for my personal stuff, it is kind of useful sometimes altho I am trying to not make such mistakes in the first place.
I think force push is a bit dangerous and I don't want to add features to GitFiend that can create trouble if I don't also have a feature that gets you out of trouble.
I'm currently working on squash and merge squash. This is probably a better way of doing what you want: This would let you work on a feature branch and then extract those changes to your main branch as a single commit.
Force Push is a feature that I use daily. I create a PR (with pr-branch) which is deployed and tested on servers. Then I fix something and continue committing to the same PR-branch, I want to combine my new commit with the old one on server PR-branch i.e. replace both commits with one combined - which requires force push.
I think force push is a bit dangerous
No, no, no. On branches where it's dangerous you restrict it server-side, not client-side! Of course you can't go rewrite history on some main trunk, but that restriction is there regardless of which client you're using, so obviously you want that security check on the server, which is exactly what everyone does. However, on your own branches you do exactly what vhusnullin explains above.