Both sides previous revisionPrevious revisionNext revision | Previous revisionNext revisionBoth sides next revision |
howto:git [2020/11/29 13:45] – Delete the Repo: just say no! digital man | howto:git [2022/10/19 20:41] – [Updating an Install from CVS] missing word digital man |
---|
- Follow the **[[#Clone]]** instructions below, cloning into a sub-directory off of your Synchronet install directory (e.g. ''/sbbs/repo''). | - Follow the **[[#Clone]]** instructions below, cloning into a sub-directory off of your Synchronet install directory (e.g. ''/sbbs/repo''). |
- If you previously had any ''localdefs.mk'' files (e.g. ''src/build/localdefs.mk'' or ''src/sbbs3/localdefs.mk'') you will want to copy or move those files into the corresponding location in the new ''repo/src/'' sub-directory. | - If you previously had any ''localdefs.mk'' files (e.g. ''src/build/localdefs.mk'' or ''src/sbbs3/localdefs.mk'') you will want to copy or move those files into the corresponding location in the new ''repo/src/'' sub-directory. |
- Now go through your normal build steps (e.g. running ''make symlinks'') in the ''repo/src/sbbs3'' sub-directory, adding ''USE_DOSEMU=1'' or ''RELEASE=1'' or whatever build options you're used to using. Once the build is complete, due to the ''symlinks'' target, your executable binary files in ''/sbbs/exec/'' should now be updated with the "latest and greatest" Synchronet development version. | - Now go through your normal build steps (e.g. running ''make symlinks'') in the ''repo/src/sbbs3'' sub-directory, adding ''RELEASE=1'' or whatever build options you're used to using. Once the build is complete, due to the ''symlinks'' target, your executable binary files in ''/sbbs/exec/'' should now be updated with the "latest and greatest" Synchronet development version. |
- If you want the latest ''[[dir:ctrl]]/[[custom:text.dat]]'' changes (you probably do) or the latest files from ''[[dir:text]]'', ''docs'', ''[[dir:xtrn]]'', ''[[dir:web]]'', or ''webv4'', you will need to either copy those files or symlink them to their equivalent in the ''repo'' sub-directories at this time. **DO NOT** copy or symlink over your other ''[[dir:ctrl]]/*'' files or you will lose important configuration settings. If you have any locally modified files in your ''[[dir:exec]]'' directory, you'll want to move those to your ''[[dir:mods]]'' before overwriting them with upstream files. | - If you want the latest ''[[dir:ctrl]]/[[custom:text.dat]]'' changes (you probably do) or the latest files from ''[[dir:text]]'', ''docs'', ''[[dir:xtrn]]'', ''[[dir:web]]'', or ''webv4'', you will need to either copy those files or symlink them to their equivalent in the ''repo'' sub-directories at this time. **DO NOT** copy or symlink over your other ''[[dir:ctrl]]/*'' files or you will lose important configuration settings. If you have any locally modified files in your ''[[dir:exec]]'' directory, you'll want to move those to your ''[[dir:mods]]'' directory before overwriting them with upstream files. |
| |
===== Clone ===== | ===== Clone ===== |
* https://gitlab.com/SynchronetBBS/sbbs | * https://gitlab.com/SynchronetBBS/sbbs |
| |
| ==== Branches ==== |
| |
| The ''master'' branch may occasionally not successfully build for your specific platform. If this happens, checking out the latest successful-nightly-build for your platform should resolve this issue. e.g. for Linux-x64: |
| |
| $ git checkout dailybuild_linux-x64 |
| |
| If you wish to switch back to the ''master'' branch a later point: |
| |
| $ git checkout master |
==== Read-only Directories ==== | ==== Read-only Directories ==== |
| |
| |
$ git pull | $ git pull |
$ git merge master | $ git merge origin/master |
| |
===== Push Without Merge Commit ===== | ===== Push Without Merge Commit ===== |
hint: See the 'Note about fast-forwards' in 'git push --help' for details. | hint: See the 'Note about fast-forwards' in 'git push --help' for details. |
| |
To avoid a 'merge commit', do this (assuming you only made one commit before attempting the push): | To avoid a 'merge commit' |
| |
$ git reset --soft HEAD~1 | $ git pull --rebase --autostash |
$ git pull | |
| Then push your changes. |
Then re-add/commit, and push your changes. | |
| ==== 'up' alias ==== |
| |
| To create a convenient alias for the ''git pull --rebase'' usage above: |
| $ git config --global alias.up "pull --rebase --autostash" |
| Now you can just run ''git up'' instead of ''git pull''. |
===== Push Without Password ===== | ===== Push Without Password ===== |
| |