Changes
Page history
move funky procedure lower down as it's distracting
authored
Jan 10, 2024
by
anarcat
Show whitespace changes
Inline
Side-by-side
howto/git.md
View page @
92615a6f
...
...
@@ -319,52 +319,6 @@ are migrating a TPA repository, *do* make sure to first follow the
above procedure as the procedure below doesn't do anything to actually
mirror or archive the repository to GitLab (yet).
> (That said, it *should* be possible to do the following procedure to
> automate this:
>
> 1. visit the [project import page](https://gitlab.torproject.org/projects/new#import_project)
>
> 2. enter the project URL, something like:
>
> https://git.torproject.org/$GITOLITE_PROJECT
>
> 3. pick a project name, verify the project slug matches
>
> 4. pick the project namespace (hint: `tpa` will autocomplete to
> `tpo/tpa`)
>
> 5. hit <kbd>Create</kbd>
>
> 6. once the import complete, if requested, archive the repository
> by going to Settings -> General (Advanced) -> Expand -> Archive
> Project
>
> 7. change the `.mrconfig` in [tpo/tpa/repos.git](https://gitlab.torproject.org/tpo/tpa/repos.git) to point to the
> new repository
>
> Alternatively, the [create project API has an `import_url`
> field](https://docs.gitlab.com/ee/api/projects.html#create-project). that could be used to automate the above.
>
> Another way to do this, from the command-line, would be:
>
> 1. clone the repository
>
> git clone https://git.torproject.org/$GITOLITE_PROJECT
>
> 2. push to GitLab ([creating a private project](https://docs.gitlab.com/ee/user/project/#create-a-new-project-with-git-push))
>
> git remote set-url origin https://gitlab.torproject.org/$GITLAB_PROJECT
>
> 3. adjust the project's privacy setting (making it public, most
> likely)
>
> 4. optionally archive the GitLab project
>
> 5. change the `.mrconfig` in [tpo/tpa/repos.git](https://gitlab.torproject.org/tpo/tpa/repos.git) to point to the
> new repository
>
> Steps 4 and 5 would require GitLab API access.)
The procedure is this simple two-step process:
1.
(optional) triage the ticket with the labels ~Git and ~Gitweb, and
...
...
@@ -386,7 +340,7 @@ The procedure is this simple two-step process:
The following changes are done by the Fabric task:
1.
.
make an (executable)
`pre-receive`
hook in
`git-rw`
with an exit
1.
make an (executable)
`pre-receive`
hook in
`git-rw`
with an exit
status of
`1`
warning about the new code location
2.
in Puppet, add a line for this project in
...
...
@@ -410,6 +364,52 @@ The following changes are done by the Fabric task:
repo debian/torproject-keyring
> That said, it *should* be possible to automate the import from
> gitolite. For now, the manual procedure for TPA repositories is:
>
> 1. visit the [project import page](https://gitlab.torproject.org/projects/new#import_project)
>
> 2. enter the project URL, something like:
>
> https://git.torproject.org/$GITOLITE_PROJECT
>
> 3. pick a project name, verify the project slug matches
>
> 4. pick the project namespace (hint: `tpa` will autocomplete to
> `tpo/tpa`)
>
> 5. hit <kbd>Create</kbd>
>
> 6. once the import complete, if requested, archive the repository
> by going to Settings -> General (Advanced) -> Expand -> Archive
> Project
>
> 7. change the `.mrconfig` in [tpo/tpa/repos.git](https://gitlab.torproject.org/tpo/tpa/repos.git) to point to the
> new repository
>
> Alternatively, the [create project API has an `import_url` field](https://docs.gitlab.com/ee/api/projects.html#create-project)
> which could be used to automate the above.
>
> Another way to do this, from the command-line, would be:
>
> 1. clone the repository
>
> git clone https://git.torproject.org/$GITOLITE_PROJECT
>
> 2. push to GitLab ([creating a private project](https://docs.gitlab.com/ee/user/project/#create-a-new-project-with-git-push))
>
> git remote set-url origin https://gitlab.torproject.org/$GITLAB_PROJECT
>
> 3. adjust the project's privacy setting (making it public, most
> likely)
>
> 4. optionally archive the GitLab project
>
> 5. change the `.mrconfig` in [tpo/tpa/repos.git](https://gitlab.torproject.org/tpo/tpa/repos.git) to point to the
> new repository
>
> Steps 4 and 5 would require GitLab API access.)
## Destroying a repository
Instead of migrating a repository to GitLab, you might want to simply
...
...
...
...