-
Notifications
You must be signed in to change notification settings - Fork 118
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Provide a way to remove the old commits #575
Labels
Comments
minwoox
added a commit
to minwoox/centraldogma
that referenced
this issue
Apr 15, 2021
Motivation: To implement line#575, we should be able to make diffs between two different repositories. Modifications: - Add `TwoRepositoriesDiffFormatter` and `TwoRepositoriesTreeWalk` to make diffes between two different repositories. - Misc - Use `@TempDir` in `GitRepositoryManagerTest` so that the temporarily created directories for the test are not left anymore. Result: - Ready to implement line#575
minwoox
added a commit
to minwoox/centraldogma
that referenced
this issue
Apr 15, 2021
Motivation: To implement line#575, we should be able to make diffs between two different repositories. Modifications: - Add `TwoRepositoriesDiffFormatter` and `TwoRepositoriesTreeWalk` to make diffes between two different repositories. - Misc - Use `@TempDir` in `GitRepositoryManagerTest` so that the temporarily created directories for the test are not left anymore. Result: - Ready to implement line#575
minwoox
added a commit
to minwoox/centraldogma
that referenced
this issue
Jul 6, 2021
minwoox
added a commit
that referenced
this issue
Jul 6, 2021
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Central Dogma uses jGit to store data. Due to the nature of Git that stores unlimited history,
Central Dogma will eventually get in trouble managing disk usage.
We can handle this by removing old commits that are not used anymore. In order to do that, we cannot just
use Git squash because that changes the hash of the commits.
So what we are going to do is (that is suggested by @trustin):
reaches a certain number(
N
).R
,R + 1
,R + 2
,R + 3
, ...R + 2
, we can remove the repository created two times earlier that isR
in this case.(We can also use a batch to remove that)
2N
history.N
Revision.INIT
is not1
anymore. It will bemax(1, Revision.HEAD - N + 1)
The text was updated successfully, but these errors were encountered: