ydata-profiling
ydata-profiling copied to clipboard
git history
Current Behaviour
Hello, I'm sorry to ask, but what happened to git history of repo? Should I Rebase all my feature branches to actual version of develop?
I have old copy of develop branch here: https://github.com/vorel99/supervised-pandas-profiling/tree/develop but new branch is completely different.
Expected Behaviour
Data Description
Code that reproduces the bug
No response
pandas-profiling version
Dependencies
-
OS
No response
Checklist
- [X] There is not yet another bug report for this issue in the issue tracker
- [X] The problem is reproducible from this bug report. This guide can help to craft a minimal bug report.
- [X] The issue has not been resolved by the entries listed under Common Issues.
Hi @vorel99,
I had to force-pushed the dev
branch before the last release because of a commit that was not following the CI requirements. This might explain why you personal fork is off with the current dev
as it might have change the commits after the faulty one.
In general, for each release we have to force push because of the way our CI works:
- the CI bot will add some commits on the
main
branch related to code quality and the release notes - we have to re-align
dev
onmaster
either before or after the release because of that
It is usually transparent for the user because even if the CI introduces new commits, they cannot create conflict such that even if the user does not rebase, it does not create conflict, just missing commits. However, when the history has to be rewritten because of a faulty commit, it messes up dev
hashes after that one, notably for the forks.
Assuming the main repository is remote
for your fork and your fork origin
you can realign like this:
git fetch remote
git rebase origin/dev dev
git push origin/dev --force
If there are still conflicts during the rebase, you might want to realign manually:
# delete the commits from at the last release
git checkout dev
git reset HEAD~30 --hard ## CAREFUL if you have local work on that branch that is not pushed, it is a destructive operation
git fetch remote
git rebase origin/dev dev
git push origin/dev --force
For a branch on which you have some work (i.e. existing commits), you can use an interactive rebase to remove the other commits but leave yours:
git checkout my-branch-from-dev
git rebase -i HEAD~30 # delete the lines representing the commits you want to delete, at least up to the last release
git fetch remote
git rebase origin/dev dev
git push origin/my-branch-from-dev --force
Let me know if you have any questions.