Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

> nothing is really reversible

This is a dealbreaker for me if it means what I think it does, which is that you can never change history to pretend the order of commits was different from what it was in reality.

I understand that certain people's preferred source control workflow involves keeping around every little intermediate commit. That's fine. But a tool should not impose workflows on me, or prevent me from modifying my data in the way I personally choose.

Imagine if vim didn't let you save files with words spelled wrong, because its authors didn't agree that that was a valid way to write prose.



I think you misunderstood what it means. If I understood it correctly, the datastore is append only, but nothing should prevent you from modifying history and pushing a new head.

I sure hope that there is an equivalent of git-filter-branch, though. In case someone commits SSH keys or secrets accidentally, just overwriting them and leaving them in the database is not good enough.


> In case someone commits SSH keys or secrets accidentally, just overwriting them and leaving them in the database is not good enough.

git-filter-branch is likely not the solution.

Revoke the keys/secrets. Then maybe rewrite history too, but afterwards.


I don't think you can ever really reverse anything in git either. Reflog has saved my ass a few times.


Reflog entries expire (after 30 days by default) and they're local only.


`git gc` throws them away. You probably want to `git config --global gc.auto 0` to truly rely on that behavior (its default value is currently 6700 [approx. # of loose objects]).


> Imagine if vim didn't let you save files with words spelled wrong, because its authors didn't agree that that was a valid way to write prose.

This would just be another tool that works for some and not for others.

If the tool doesn't suit your needs, don't use it. It doesn't mean people shouldn't innovate or attempt new things because it doesn't solve your specific problem sets.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: