kubernetes / api

The canonical location of the Kubernetes API definition.
Apache License 2.0
657 stars 435 forks source link

Preserving the history #1

Closed caesarxuchao closed 7 years ago

caesarxuchao commented 7 years ago

I've been playing with git filter-branch commands to preserve the history of k8s.io/kubernetes/pkg/api and k8s.io/kubernetes/pkg/apis, the result is https://github.com/caesarxuchao/api.

It has ~4000 commits (~half of them are merge commits) that touched pkg/api and pkg/apis. If you run git log --follow core/v1/types.go from HEAD, it will show you all the commits that changed pkg/api/v1/types.go, and the commit where i moved pkg/api/v1/types.go to core/v1/types.go. I think in terms of "preserving commit history", it's good enough.

I also append Kubernetes-commit: xxx to the commit messages so people can find the original commit in k8s.io/kubernetes.

Please let me know if you have other concerns.

If no one objects, i'll push the commits to the master branch of k8s.io/api.

@lavalamp @justinsb @bgrant0607 @kubernetes/sig-api-machinery-misc

caesarxuchao commented 7 years ago

cc @deads2k @sttts you might also be interested?

lavalamp commented 7 years ago

I would probably remove the merge commits.

On Wed, Jun 21, 2017 at 3:50 PM, Chao Xu notifications@github.com wrote:

cc @deads2k https://github.com/deads2k @sttts https://github.com/sttts you might also be interested?

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/kubernetes/api/issues/1#issuecomment-310227048, or mute the thread https://github.com/notifications/unsubscribe-auth/AAnglvbECUNyLzv-OOCZYbQVkUBUn8kEks5sGZ5JgaJpZM4N71C3 .

caesarxuchao commented 7 years ago

Tried it. That would cause conflicts. I think it's merge is somehow different from cherry-picks.

lavalamp commented 7 years ago

I have done something similar and didn't have that problem, strange. I see there are actually code changes in the merge commits, which I didn't expect.

But this seems to be fine for preserving history.

caesarxuchao commented 7 years ago

Thanks for the confirmation.

justinsb commented 7 years ago

This LGTM - thank you @caesarxuchao

caesarxuchao commented 7 years ago

Thanks for confirmation. The master branch is updated with the history.