Both sides previous revisionPrevious revisionNext revision | Previous revision |
howto:git [2022/02/12 01:29] – ['up' alias] I guess I'm using putting $ prompts before git commands on this page digital man | howto:git [2024/10/11 22:21] (current) – Mention the rename of install/GNUmakefile to install-sbbs.mk digital man |
---|
===== Updating an Install from CVS ===== | ===== Updating an Install from CVS ===== |
| |
So you previously installed Synchronet for *nix using the ''install/GNUmakefile'' method, which resulted in "checking-out" the source files from [[dev:CVS]] before building them and now you want to get the [[http://cvs.synchro.net/gitpushlog.ssjs|latest updates]] since the switch to [[dev:Git]]. | So you previously installed Synchronet for *nix using the ''install/GNUmakefile''((this file has since been renamed to install-sbbs.mk)) method, which resulted in "checking-out" the source files from [[dev:CVS]] before building them and now you want to get the [[http://cvs.synchro.net/gitpushlog.ssjs|latest updates]] since the switch to [[dev:Git]]. |
| |
- 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 ''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 ===== |
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: | 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 | $ git checkout dailybuild_linux-x64 |
| |
If you wish to switch back to the ''master'' branch a later point: | If you wish to switch back to the ''master'' branch a later point: |
| |
git checkout master | $ 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 ===== |
- Run ''git diff'' in the repo (show changes, including white-space) to confirm that either //no changes// or only your //expected// changes are shown. | - Run ''git diff'' in the repo (show changes, including white-space) to confirm that either //no changes// or only your //expected// changes are shown. |
| |
| ===== Reset ===== |
| |
| If you're getting Git errors about local changes to files that you didn't make and you just want to reset every file in the repository to its latest upstream contents, run these commands: |
| |
| $ cd /path/to/sbbs/repo |
| $ git fetch --all |
| $ git reset --hard origin/master |
| $ git checkout master |
| |
| After the successful execution of these commands, your ''sbbs'' Git repo should be reset back to the current upstream contents. |
| |
===== Delete the Repo ===== | ===== Delete the Repo ===== |
| |