diff options
| author | Stefan Kangas | 2021-01-31 03:40:01 +0100 |
|---|---|---|
| committer | Stefan Kangas | 2021-01-31 03:40:21 +0100 |
| commit | 0bc4b003d7493844d0f4aedb17cb1277bdf20533 (patch) | |
| tree | 0c85c3812d4d7cc7b7d1080d0b7bb2259c107160 /admin/notes/git-workflow | |
| parent | 9c7543417306752683faacd1436f9748a6f4f616 (diff) | |
| download | emacs-0bc4b003d7493844d0f4aedb17cb1277bdf20533.tar.gz emacs-0bc4b003d7493844d0f4aedb17cb1277bdf20533.zip | |
; emacs-26 → emacs-27
Diffstat (limited to 'admin/notes/git-workflow')
| -rw-r--r-- | admin/notes/git-workflow | 20 |
1 files changed, 10 insertions, 10 deletions
diff --git a/admin/notes/git-workflow b/admin/notes/git-workflow index 28b6f91a25d..143520c2c8c 100644 --- a/admin/notes/git-workflow +++ b/admin/notes/git-workflow | |||
| @@ -15,14 +15,14 @@ Initial setup | |||
| 15 | ============= | 15 | ============= |
| 16 | 16 | ||
| 17 | Then we want to clone the repository. We normally want to have both | 17 | Then we want to clone the repository. We normally want to have both |
| 18 | the current master and the emacs-26 branch. | 18 | the current master and the emacs-27 branch. |
| 19 | 19 | ||
| 20 | mkdir ~/emacs | 20 | mkdir ~/emacs |
| 21 | cd ~/emacs | 21 | cd ~/emacs |
| 22 | git clone <membername>@git.sv.gnu.org:/srv/git/emacs.git master | 22 | git clone <membername>@git.sv.gnu.org:/srv/git/emacs.git master |
| 23 | cd master | 23 | cd master |
| 24 | git config push.default current | 24 | git config push.default current |
| 25 | git worktree add ../emacs-26 emacs-26 | 25 | git worktree add ../emacs-27 emacs-27 |
| 26 | 26 | ||
| 27 | You now have both branches conveniently accessible, and you can do | 27 | You now have both branches conveniently accessible, and you can do |
| 28 | "git pull" in them once in a while to keep updated. | 28 | "git pull" in them once in a while to keep updated. |
| @@ -52,11 +52,11 @@ you commit your change locally and then send a patch file as a bug report | |||
| 52 | as described in ../../CONTRIBUTE. | 52 | as described in ../../CONTRIBUTE. |
| 53 | 53 | ||
| 54 | 54 | ||
| 55 | Backporting to emacs-26 | 55 | Backporting to emacs-27 |
| 56 | ======================= | 56 | ======================= |
| 57 | 57 | ||
| 58 | If you have applied a fix to the master, but then decide that it should | 58 | If you have applied a fix to the master, but then decide that it should |
| 59 | be applied to the emacs-26 branch, too, then | 59 | be applied to the emacs-27 branch, too, then |
| 60 | 60 | ||
| 61 | cd ~/emacs/master | 61 | cd ~/emacs/master |
| 62 | git log | 62 | git log |
| @@ -66,7 +66,7 @@ which will look like | |||
| 66 | 66 | ||
| 67 | commit 958b768a6534ae6e77a8547a56fc31b46b63710b | 67 | commit 958b768a6534ae6e77a8547a56fc31b46b63710b |
| 68 | 68 | ||
| 69 | cd ~/emacs/emacs-26 | 69 | cd ~/emacs/emacs-27 |
| 70 | git cherry-pick -xe 958b768a6534ae6e77a8547a56fc31b46b63710b | 70 | git cherry-pick -xe 958b768a6534ae6e77a8547a56fc31b46b63710b |
| 71 | 71 | ||
| 72 | and add "Backport:" to the commit string. Then | 72 | and add "Backport:" to the commit string. Then |
| @@ -74,17 +74,17 @@ and add "Backport:" to the commit string. Then | |||
| 74 | git push | 74 | git push |
| 75 | 75 | ||
| 76 | 76 | ||
| 77 | Merging emacs-26 to the master | 77 | Merging emacs-27 to the master |
| 78 | ============================== | 78 | ============================== |
| 79 | 79 | ||
| 80 | It is recommended to use the file gitmerge.el in the admin directory | 80 | It is recommended to use the file gitmerge.el in the admin directory |
| 81 | for merging 'emacs-26' into 'master'. It will take care of many | 81 | for merging 'emacs-27' into 'master'. It will take care of many |
| 82 | things which would otherwise have to be done manually, like ignoring | 82 | things which would otherwise have to be done manually, like ignoring |
| 83 | commits that should not land in master, fixing up ChangeLogs and | 83 | commits that should not land in master, fixing up ChangeLogs and |
| 84 | automatically dealing with certain types of conflicts. If you really | 84 | automatically dealing with certain types of conflicts. If you really |
| 85 | want to, you can do the merge manually, but then you're on your own. | 85 | want to, you can do the merge manually, but then you're on your own. |
| 86 | If you still choose to do that, make absolutely sure that you *always* | 86 | If you still choose to do that, make absolutely sure that you *always* |
| 87 | use the 'merge' command to transport commits from 'emacs-26' to | 87 | use the 'merge' command to transport commits from 'emacs-27' to |
| 88 | 'master'. *Never* use 'cherry-pick'! If you don't know why, then you | 88 | 'master'. *Never* use 'cherry-pick'! If you don't know why, then you |
| 89 | shouldn't manually do the merge in the first place; just use | 89 | shouldn't manually do the merge in the first place; just use |
| 90 | gitmerge.el instead. | 90 | gitmerge.el instead. |
| @@ -97,11 +97,11 @@ up-to-date by doing a pull. Then start Emacs with | |||
| 97 | emacs -l admin/gitmerge.el -f gitmerge | 97 | emacs -l admin/gitmerge.el -f gitmerge |
| 98 | 98 | ||
| 99 | You'll be asked for the branch to merge, which will default to | 99 | You'll be asked for the branch to merge, which will default to |
| 100 | 'origin/emacs-26', which you should accept. Merging a local tracking | 100 | 'origin/emacs-27', which you should accept. Merging a local tracking |
| 101 | branch is discouraged, since it might not be up-to-date, or worse, | 101 | branch is discouraged, since it might not be up-to-date, or worse, |
| 102 | contain commits from you which are not yet pushed upstream. | 102 | contain commits from you which are not yet pushed upstream. |
| 103 | 103 | ||
| 104 | You will now see the list of commits from 'emacs-26' which are not yet | 104 | You will now see the list of commits from 'emacs-27' which are not yet |
| 105 | merged to 'master'. You might also see commits that are already | 105 | merged to 'master'. You might also see commits that are already |
| 106 | marked for "skipping", which means that they will be merged with a | 106 | marked for "skipping", which means that they will be merged with a |
| 107 | different merge strategy ('ours'), which will effectively ignore the | 107 | different merge strategy ('ours'), which will effectively ignore the |