Skip to content
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

[Converge] copy relevant git metadata from joyent/node #2518

Closed
rvagg opened this issue Aug 24, 2015 · 19 comments
Closed

[Converge] copy relevant git metadata from joyent/node #2518

rvagg opened this issue Aug 24, 2015 · 19 comments
Assignees
Labels
meta Issues and PRs related to the general management of the project.
Milestone

Comments

@rvagg
Copy link
Member

rvagg commented Aug 24, 2015

See also nodejs/node-v0.x-archive#25876

Marking this for 4.0.0 milestone. This is about being able to cut releases for 0.10 and 0.12 from here but also for preserving proper history.

@rvagg
Copy link
Member Author

rvagg commented Aug 24, 2015

both v0.10 and v0.12 were frankenbranches in this repo, a mess from the early days of node-forward. I've saved them as archived-io.js-v0.10 and archived-io.js-v0.12 respectively so as not to lose anything that might be in there that wasn't copied to active dev branches as well (mostly it looks like commits were landed in two places each time).

I've pushed current HEADs of v0.10 and v0.12 from joyent/node to this repo

@rvagg
Copy link
Member Author

rvagg commented Aug 24, 2015

I'm sure there's a more sophisticated way but

git push origin `git tag | grep 'v0.1[02]'`

all the 0.10 and 0.12 tags are there now

@rvagg
Copy link
Member Author

rvagg commented Aug 24, 2015

Again, this is pretty brute-force but:

for branch in `git ls-remote joyent | grep -E 'refs/heads/v0\.1[02]\.\d+-release' | awk -F/ '{ print $NF }'`; do
  git checkout joyent/${branch}
  git checkout -b ${branch}
  git push origin ${branch}
done

the release branches are pretty important so they should be copied over even though we stopped using them since about io.js v1.0.4.

@rvagg
Copy link
Member Author

rvagg commented Aug 24, 2015

we need to be able to show that we can cut 0.10 and 0.12 releases from this repo before this issue can be closed, until then, joyent/node is still active and can't be archived.

@rvagg rvagg mentioned this issue Aug 24, 2015
10 tasks
@mscdex mscdex added the meta Issues and PRs related to the general management of the project. label Aug 24, 2015
@rvagg rvagg self-assigned this Aug 25, 2015
@rvagg
Copy link
Member Author

rvagg commented Aug 25, 2015

Assigning this to myself, tho I'll probably need to lean on @orangemocha to make sure I get this done properly.

@orangemocha
Copy link
Contributor

The script LGTM. Perhaps we need to add the option --follow-tags to the git push command, and make sure we fetch --tags from joyent in the beginning.

@orangemocha
Copy link
Contributor

This is the list I am getting:

refs/heads/v0.10
refs/heads/v0.10.0-release
refs/heads/v0.10.1-release
refs/heads/v0.10.10-release
refs/heads/v0.10.11-release
refs/heads/v0.10.12-release
refs/heads/v0.10.13-release
refs/heads/v0.10.14-release
refs/heads/v0.10.15-release
refs/heads/v0.10.16-release
refs/heads/v0.10.17-release
refs/heads/v0.10.18-release
refs/heads/v0.10.19-release
refs/heads/v0.10.2-release
refs/heads/v0.10.20-release
refs/heads/v0.10.21-release
refs/heads/v0.10.22-release
refs/heads/v0.10.23-release
refs/heads/v0.10.24-release
refs/heads/v0.10.25-release
refs/heads/v0.10.26-release
refs/heads/v0.10.27-release
refs/heads/v0.10.28-release
refs/heads/v0.10.29-release
refs/heads/v0.10.3-release
refs/heads/v0.10.30-release
refs/heads/v0.10.31-release
refs/heads/v0.10.32-release
refs/heads/v0.10.33-release
refs/heads/v0.10.34-release
refs/heads/v0.10.35-release
refs/heads/v0.10.36-release
refs/heads/v0.10.37-release
refs/heads/v0.10.38-release
refs/heads/v0.10.39-release
refs/heads/v0.10.4-release
refs/heads/v0.10.40-release
refs/heads/v0.10.5-release
refs/heads/v0.10.6-release
refs/heads/v0.10.7-release
refs/heads/v0.10.8-release
refs/heads/v0.10.9-release
refs/heads/v0.11.0-release
refs/heads/v0.11.1-release
refs/heads/v0.11.10-release
refs/heads/v0.11.11-release
refs/heads/v0.11.12-release
refs/heads/v0.11.13-release
refs/heads/v0.11.14-release
refs/heads/v0.11.15-release
refs/heads/v0.11.16-release
refs/heads/v0.11.2-release
refs/heads/v0.11.3-release
refs/heads/v0.11.4-release
refs/heads/v0.11.5-release
refs/heads/v0.11.6-release
refs/heads/v0.11.7-release
refs/heads/v0.11.8-release
refs/heads/v0.11.9-release
refs/heads/v0.12
refs/heads/v0.12.0-release
refs/heads/v0.12.1-release
refs/heads/v0.12.2-release
refs/heads/v0.12.3-release
refs/heads/v0.12.4-release
refs/heads/v0.12.5-release
refs/heads/v0.12.6-release
refs/heads/v0.12.7-release

/cc @misterdjules

@orangemocha
Copy link
Contributor

I have tweaked the script a bit. If the list looks good, I can make the push as part of nodejs/node-v0.x-archive#25876 or even before.

@Fishrock123
Copy link
Contributor

@orangemocha what is missing here now? I see basically everything, just not pre-0.10.0 tags.

@orangemocha
Copy link
Contributor

Probably nothing. I didn't realize @rvagg had already done the push. I will do an update as part of nodejs/node-v0.x-archive#25876

@Fishrock123
Copy link
Contributor

I think @mikeal said we'd also need pre 0.10.0 info?

@rvagg
Copy link
Member Author

rvagg commented Aug 29, 2015

yes, probably a good idea, the patterns using for tagging & branching probably aren't as straight forward as for 0.10 and 0.12 where the practices were very consistent

@rvagg
Copy link
Member Author

rvagg commented Aug 30, 2015

just pushed all the other tags from v0.0.x onward, including the odd versions

also pushed the release branches, which is just:

v0.11.0-release
v0.11.1-release
v0.11.10-release
v0.11.11-release
v0.11.12-release
v0.11.13-release
v0.11.14-release
v0.11.15-release
v0.11.16-release
v0.11.2-release
v0.11.3-release
v0.11.4-release
v0.11.5-release
v0.11.6-release
v0.11.7-release
v0.11.8-release
v0.11.9-release
v0.7.4-release
v0.8.10-release
v0.8.11-release
v0.8.12-release
v0.8.13-release
v0.8.14-release
v0.8.15-release
v0.8.16-release
v0.8.17-release
v0.8.18-release
v0.8.19-release
v0.8.20-release
v0.8.21-release
v0.8.22-release
v0.8.23-release
v0.8.24-release
v0.8.25-release
v0.8.26-release
v0.8.27-release
v0.8.28-release
v0.8.7-release
v0.8.8-release
v0.8.9-release
v0.9.1-release
v0.9.10-release
v0.9.11-release
v0.9.12-release
v0.9.2-release
v0.9.3-release
v0.9.4-release
v0.9.5-release
v0.9.6-release
v0.9.7-release
v0.9.8-release
v0.9.9-release

I'm guessing that it was TJ that introduced the release branching which is why it only goes back that far.

@Fishrock123
Copy link
Contributor

@rvagg is this done then?

@rvagg
Copy link
Member Author

rvagg commented Aug 31, 2015

I think so but would appreciate sign-off from others

@orangemocha
Copy link
Contributor

@rvagg did you push tags as well with --follow-tags?

@rvagg
Copy link
Member Author

rvagg commented Aug 31, 2015

no, I would if I could understand what the man page is trying to say that the option does, mind taking over on this if you don't think it's done properly?

@orangemocha
Copy link
Contributor

It's supposed to push tags, but only the tags that are reachable from the heads that you are pushing. It doesn't look as if your script was pushing tags.

Sure, I can redo this today as part of the move of joyent/node.

@orangemocha
Copy link
Contributor

all done now

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
meta Issues and PRs related to the general management of the project.
Projects
None yet
Development

No branches or pull requests

4 participants