|
|
|
@ -265,7 +265,7 @@ This primer is less ambitiously scoped than the old Subversion Primer, but shoul
|
|
|
|
|
|
|
|
|
|
If you want to download FreeBSD, compile it from sources, and generally keep up to date that way, this primer is for you.
|
|
|
|
|
It covers getting the sources, updating the sources, bisecting and touches briefly on how to cope with a few local changes.
|
|
|
|
|
It covers the basics, and tries to give good pointers to more in-depth treatment for when the readers finds the basics insufficient.
|
|
|
|
|
It covers the basics, and tries to give good pointers to more in-depth treatment for when the reader finds the basics insufficient.
|
|
|
|
|
Other sections of this guide cover more advanced topics related to contributing to the project.
|
|
|
|
|
|
|
|
|
|
The goal of this section is to highlight those bits of git needed to track sources.
|
|
|
|
@ -668,7 +668,7 @@ You will see a commit message, now search for that in the new branch:
|
|
|
|
|
....
|
|
|
|
|
% git log --grep="commit message on old_branch" freebsd/main
|
|
|
|
|
....
|
|
|
|
|
You would help locat the commit hash on the new main branch, create a helper branch (in the example we call it 'stage') from that hash:
|
|
|
|
|
You would help locate the commit hash on the new main branch, create a helper branch (in the example we call it 'stage') from that hash:
|
|
|
|
|
[source,shell]
|
|
|
|
|
....
|
|
|
|
|
% git checkout -b stage _hash_found_from_git_log_
|
|
|
|
@ -1404,7 +1404,7 @@ This section is designed to walk people through the conversion process from Subv
|
|
|
|
|
This section will cover a couple of common scenarios for migrating from using the FreeBSD Subversion repo to the FreeBSD source git repo.
|
|
|
|
|
The FreeBSD Git conversion is still in beta status, so some minor things may change between this and going into production.
|
|
|
|
|
|
|
|
|
|
The fist thing to do is install git. Any version of Git will do, though the latest one in ports / packages generally will be good.
|
|
|
|
|
The first thing to do is install git. Any version of Git will do, though the latest one in ports / packages generally will be good.
|
|
|
|
|
Either build it from ports, or install it using pkg (though some folks might use `su` or `doas` instead of `sudo`):
|
|
|
|
|
|
|
|
|
|
[source,shell]
|
|
|
|
@ -1415,7 +1415,7 @@ Either build it from ports, or install it using pkg (though some folks might use
|
|
|
|
|
===== No staged changes migration
|
|
|
|
|
|
|
|
|
|
If you have no changes pending, the migration is straightforward.
|
|
|
|
|
In this, you abandon the Subversion tree and clone the Git repoository.
|
|
|
|
|
In this, you abandon the Subversion tree and clone the Git repository.
|
|
|
|
|
It's likely best to retain your subversion tree, in case there's something you've forgotten about there.
|
|
|
|
|
First, let's clone the repository:
|
|
|
|
|
[source,shell]
|
|
|
|
@ -1426,13 +1426,13 @@ will create a clone of the FreeBSD src repository into a subdirectory called `fr
|
|
|
|
|
We are currently mirroring the source repository to https://github.com/freebsd/freebsd-src.git as well.
|
|
|
|
|
https://github.com/freebsd/freebsd-legacy.git has the old github mirror with the old hashes should you need that for your migration.
|
|
|
|
|
The github `master` branch has been frozen.
|
|
|
|
|
As the default in git has change, we've shifted from `master` to `main`, the new repository uses `main`.
|
|
|
|
|
As the default in git has changed, we've shifted from `master` to `main`; the new repository uses `main`.
|
|
|
|
|
We also mirror the repository to gitlab at https://gitlab.com/FreeBSD/src.git .
|
|
|
|
|
|
|
|
|
|
It's useful to have the old Subversion revisions available.
|
|
|
|
|
This data is stored using Git notes, but Git doesn't fetch those by default.
|
|
|
|
|
The --config and the argument above changed the default to fetch the notes.
|
|
|
|
|
If you've cloned the repository without this, or wish to add notes to a previously clone repository, use the following commands:
|
|
|
|
|
If you've cloned the repository without this, or wish to add notes to a previously cloned repository, use the following commands:
|
|
|
|
|
[source,shell]
|
|
|
|
|
....
|
|
|
|
|
% git config --add remote.freebsd.fetch "+refs/notes/*:refs/notes/*"
|
|
|
|
@ -1486,7 +1486,7 @@ Alternatively, `git pull --rebase` is useful if you have changes staged in the m
|
|
|
|
|
....
|
|
|
|
|
% git config --global pull.ff only
|
|
|
|
|
....
|
|
|
|
|
You may need to omit the --global if you want this setting to only this repository.
|
|
|
|
|
You may need to omit the --global if you want this setting to apply to only this repository.
|
|
|
|
|
|
|
|
|
|
[source,shell]
|
|
|
|
|
....
|
|
|
|
|