Blame
Date:
Mon Jan 23 05:00:25 2023 UTC
Message:
Daily backup
01
2023-01-22
jrmu
version=pmwiki-2.2.130 ordered=1 urlencoded=1
02
2023-01-22
jrmu
agent=w3m/0.5.3+git20210102
03
2023-01-22
jrmu
author=jrmu
04
2023-01-22
jrmu
charset=UTF-8
05
2023-01-22
jrmu
csum=
06
2023-01-22
jrmu
ctime=1639669108
07
2023-01-22
jrmu
host=38.87.162.8
08
2023-01-22
jrmu
name=Got.Repo
09
2023-01-22
jrmu
rev=12
10
2023-01-22
jrmu
targets=Got.Usage,Git.Usage,Gotweb.Install
11
2023-01-22
jrmu
text=(:title Create Got Repo:)%0a%0aThis guide explains how to create a got repository. It%0aassumes you have already read the [[got/usage|got usage guide]].%0a%0a!! Create commit group%0a%0aFirst, you may want to create a new group with commit rights:%0a%0a[@%0a$ doas groupadd commit%0a@]%0a%0aFor each existing user you want to give commit rights to:%0a%0a[@%0a$ doas usermod -G commit $USER%0a@]%0a%0aFor each new user you want to create with commit rights:%0a%0a[@%0a$ doas useradd -G commit $USER%0a@]%0a%0aReplace $USER with the committer's user's name.%0a%0a!! Create got directory%0a%0aWe are going to place the repo in /var/git:%0a%0a[@%0a$ doas mkdir /var/git%0a$ doas chown -R $USER:commit /var/git%0a$ cd /var/git%0a@]%0a%0aNext, you can either clone a repo or create a new one:%0a%0a!!! Clone Repo%0a%0aTo clone a repo without encryption ('''WARNING''': insecure):%0a%0a[@%0a$ got clone git://example.com/repo.git%0a@]%0a%0aReplace @@example.com/repo.git@@ with your actual path.%0a%0aHTTP URLs currently requires [[git/usage|git]]:%0a%0a[@%0a$ git clone https://example.com/repo.git%0a@]%0a%0a!!! Create Repo%0a%0aTo create an empty repository:%0a%0a[@%0a$ got init /var/git/project%0a@]%0a%0aReplace @@project@@ with your actual repo name. For example:%0a%0aAfterwards, we need to import the code for the repository:%0a%0a[@%0a$ got import -m "Import sources" -r /var/git/project /path/to/code%0a@]%0a%0a* @@-m@@ provides the log message for the import.%0a* @@-r@@ provides the repository path.%0a%0aReplace @@project@@ and @@/path/to/code@@. For example:%0a%0a[@%0a$ got import -m "Import sources" -r /var/git/ircnowd ~/ngircd%0a@]%0a%0aThis will import the code from @@ngircd@@ into @@ircnowd@@%0a.%0a%0a!!! Allow commit access%0a%0aMake sure to set the proper permissions to allow commit access:%0a%0a[@%0a$ doas chown -R $USER:commit /var/git/project%0a$ doas chmod -R g+w /var/git/project%0a@]%0a%0a!! Checkout code%0a%0aTo checkout the code:%0a%0a[@%0a$ cd ~%0a$ mkdir ~/project%0a$ got checkout /var/git/project%0a@]%0a%0a!! Commit code%0a%0aTo commit changes in a work tree:%0a%0a[@%0a$ got -m "Commit message" commit%0a@]%0a%0aReplace @@Commit message@@ with a commit message.%0a%0aSee Also:%0a%0a[[Gotweb/Install|Install Gotweb]]%0a[[Got/Usage|Got usage]]%0a
12
2023-01-22
jrmu
time=1641432029
13
2023-01-22
jrmu
title=Create Got Repo
14
2023-01-22
jrmu
author:1641432029=jrmu
15
2023-01-22
jrmu
diff:1641432029:1639715196:=90c90%0a%3c $ doas chmod -R g+w /var/git/project%0a---%0a> $ doas chmod -R g+w $user:commit /var/git/project%0a
16
2023-01-22
jrmu
host:1641432029=38.87.162.8
17
2023-01-22
jrmu
author:1639715196=jrmu
18
2023-01-22
jrmu
diff:1639715196:1639708305:=
19
2023-01-22
jrmu
host:1639715196=38.87.162.47
20
2023-01-22
jrmu
author:1639708305=jrmu
21
2023-01-22
jrmu
diff:1639708305:1639708072:=103,106c103,110%0a%3c !! Commit code%0a%3c %0a%3c To commit changes in a work tree:%0a%3c %0a---%0a> !! Optional: Prevent Shell Access%0a> %0a> '''Optional''': If your server is not used to provide shell accounts,%0a> and all users who connect via ssh are admins, you can add the following to%0a> prevent committers from having shell access:%0a> %0a> First, we create @@/usr/bin/cvs-login.sh@@:%0a> %0a108c112,114%0a%3c $ got -m "Commit message" commit%0a---%0a> #!/bin/sh%0a> %0a> exec /usr/bin/cvs server%0a111c117,152%0a%3c Replace @@Commit message@@ with a commit message.%0a---%0a> This simple shell script will be used as the login shell. Any time a committer%0a> logs in, cvs will immediately be called.%0a> %0a> We set it to be executable:%0a> %0a> [@%0a> $ doas chown root:wheel /usr/bin/cvs-login.sh%0a> $ doas chmod +x /usr/bin/cvs-login.sh%0a> @]%0a> %0a> Next, edit @@/etc/ssh/sshd_config@@:%0a> %0a> [@%0a> Match Group commit,!wheel%0a> AllowAgentForwarding no%0a> AllowStreamLocalForwarding no%0a> DisableForwarding yes%0a> PermitListen none%0a> PermitOpen none%0a> PermitTunnel no%0a> PermitUserRC no%0a> X11Forwarding no%0a> AllowTcpForwarding no%0a> PermitTTY no%0a> ForceCommand "/usr/bin/cvs-login.sh"%0a> @]%0a> %0a> This will force all users in the commit group who are not in wheel (not%0a> administrators) to use /usr/bin/cvs-login.sh. Committers therefore never%0a> get shell access; they only get cvs access%0a> %0a> Restart sshd to apply changes:%0a> %0a> [@%0a> $ doas rcctl restart sshd%0a> @]%0a
22
2023-01-22
jrmu
host:1639708305=38.87.162.47
23
2023-01-22
jrmu
author:1639708072=jrmu
24
2023-01-22
jrmu
diff:1639708072:1639707095:=61c61%0a%3c $ got init /var/git/project%0a---%0a> $ got init /var/git/repository%0a64,65c64,65%0a%3c Replace @@project@@ with your actual repo name. For example:%0a%3c %0a---%0a> Replace @@repository@@ with your actual repo name. For example:%0a> %0a69c69%0a%3c $ got import -m "Import sources" -r /var/git/project /path/to/code%0a---%0a> $ got import -m "Import sources" -r /var/git/repository /path/to/code%0a75,76c75,76%0a%3c Replace @@project@@ and @@/path/to/code@@. For example:%0a%3c %0a---%0a> Replace @@repository@@ and @@/path/to/code@@. For example:%0a> %0a84,87c84,89%0a%3c !!! Allow commit access%0a%3c %0a%3c Make sure to set the proper permissions to allow commit access:%0a%3c %0a---%0a> !! Setting CVSROOT%0a> %0a> Before we begin, decide where you want the CVS files to be located. You will want to set CVSROOT.%0a> %0a> You can set it for just the current shell:%0a> %0a89,90c91%0a%3c $ doas chown -R $USER:commit /var/git/project%0a%3c $ doas chmod -R g+w $user:commit /var/git/project%0a---%0a> $ export CVSROOT=/path/to/CVS%0a93,96c94,95%0a%3c !! Checkout code%0a%3c %0a%3c To checkout the code:%0a%3c %0a---%0a> Replace @@/path/to/CVS@@ with the actual directory. /CVS is recommended:%0a> %0a98,100c97,196%0a%3c $ cd ~%0a%3c $ mkdir ~/project%0a%3c $ got checkout /var/git/project%0a---%0a> $ export CVSROOT=/CVS%0a> @]%0a> %0a> As a shortcut, you can add this to the bottom of your ~/.profile so you don't have to type it each time:%0a> %0a> [@%0a> $ echo 'CVSROOT="/CVS"' >> ~/.profile%0a> @]%0a> %0a> Once CVSROOT is set, log out and log in. From now on, you can omit the -d argument when working with cvs.%0a> %0a> !! Create new repo%0a> %0a> To create a new CVS repository, type:%0a> %0a> [@%0a> $ doas mkdir $CVSROOT%0a> $ doas chown $USER:commit $CVSROOT%0a> $ cvs init%0a> @]%0a> %0a> Replace @@$USER@@ with the maintainer of CVSROOT.%0a> %0a> !! Import New Module%0a> %0a> If you have existing code that you'd like to import to a CVS repository, first change%0a> to the folder containing the source code, then type:%0a> %0a> [@%0a> $ cvs import reponame vendortag releasetag%0a> @]%0a> %0a> Replace @@reponame@@, @@vendortag@@, and @@releasetag@@. CVS will put the source files inside a directory named @@reponame@@ inside the CVS root directory. @@vendortag@@ should be replaced with the vendor (the author) of the repository. @@releasetag@@ is the tag for the specific release.%0a> %0a> For example:%0a> %0a> [@%0a> $ cd ~/ircnowd/%0a> $ cvs import ircnowd ircnow start%0a> @]%0a> %0a> '''Note''': CVS does not automatically transform the imported source code into a working directory. As a result, any changes you make to the original source code directory cannot be committed to the CVS repo.%0a> %0a> To fix this, you will need to checkout the source code. Change your directory to somewhere else to place the new working directory, then type:%0a> %0a> [@%0a> $ cd /path/to/new/directory/%0a> $ cvs checkout -P reponame%0a> @]%0a> %0a> Replace @@/path/to/new/directory/@@ with the directory you want the working directory to be in. Then, replace @@reponame@@ with the repository name.%0a> %0a> Change directory to @@reponame@@ to make changes. Afterwards, use cvs to commit them:%0a> %0a> [@%0a> $ cd reponame%0a> ... work on code ...%0a> $ cvs commit%0a> @]%0a> %0a> For example, suppose you create a new folder for working directories ~/code/ and then checkout the working directory for ircnowd:%0a> %0a> [@%0a> $ mkdir ~/code/%0a> $ cd ~/code/%0a> $ cvs checkout -P ircnowd%0a> $ cd ~/code/ircnowd/%0a> ... work on code ...%0a> $ cvs commit%0a> @]%0a> %0a> Now, ~/code/ircnowd will have the working directory for ircnowd. CVS will track changes so that you can commit changes to the CVS repo.%0a> %0a> If checkout works properly, you can safely delete the old source code directory you imported from (since that one is not tracked by CVS).%0a> %0a> [@%0a> $ rm -rf ~/ircnowd/%0a> @]%0a> %0a> !! Granting commit access%0a> %0a> You will want to change group ownership and provide group write permissions:%0a> %0a> [@%0a> $ doas chown -R $USER:commit $CVSROOT%0a> $ doas chmod -R g+w $CVSROOT%0a> @]%0a> %0a> A sample directory should look like this:%0a> %0a> [@%0a> # ls -lha /CVS%0a> total 28%0a> drwxr-xr-x 7 jrmu commit 512B Oct 9 06:19 .%0a> drwxr-xr-x 10 root wheel 512B Oct 9 06:10 ..%0a> drwxrwxr-x 3 jrmu commit 1.0K Apr 29 06:48 CVSROOT%0a> drwxrwxr-x 9 jrmu commit 512B May 8 11:42 acopm%0a> drwxrwxr-x 2 jrmu commit 1.0K Aug 26 04:17 botnow%0a> drwxrwxr-x 8 jrmu commit 512B May 27 16:57 brogue-ce%0a> drwxrwxr-x 6 jrmu commit 512B May 7 06:46 ircnowd%0a
25
2023-01-22
jrmu
host:1639708072=38.87.162.47
26
2023-01-22
jrmu
author:1639707095=jrmu
27
2023-01-22
jrmu
diff:1639707095:1639706559:=
28
2023-01-22
jrmu
host:1639707095=38.87.162.47
29
2023-01-22
jrmu
author:1639706559=jrmu
30
2023-01-22
jrmu
diff:1639706559:1639706410:=61c61%0a%3c $ got init /var/git/repository%0a---%0a> $ got init /var/git/reponame%0a64,67c64,65%0a%3c Replace @@repository@@ with your actual repo name. For example:%0a%3c %0a%3c Afterwards, we need to import the code for the repository:%0a%3c %0a---%0a> Replace @@reponame@@ with your actual repo name. For example:%0a> %0a69c67%0a%3c $ got import -m "Import sources" -r /var/git/repository /path/to/code%0a---%0a> $ got init ~/ircnowd.git%0a71a70,77%0a> This will create a got repo called ircnowd.%0a> %0a> Afterwards, we need to import the code for the repository:%0a> %0a> [@%0a> $ got import -m "Import sources" -r /path/to/repository /path/to/code%0a> @]%0a> %0a75,76c81,82%0a%3c Replace @@repository@@ and @@/path/to/code@@. For example:%0a%3c %0a---%0a> Replace @@/path/to/repository@@ and @@/path/to/code@@. For example:%0a> %0a78c84%0a%3c $ got import -m "Import sources" -r /var/git/ircnowd ~/ngircd%0a---%0a> $ got import -m "Import sources" -r ~/ircnowd.git ~/ngircd%0a81c87%0a%3c This will import the code from @@ngircd@@ into @@ircnowd@@%0a---%0a> This will import the code from @@ngircd@@ into @@ircnowd.git@@%0a
31
2023-01-22
jrmu
host:1639706559=38.87.162.47
32
2023-01-22
jrmu
author:1639706410=jrmu
33
2023-01-22
jrmu
diff:1639706410:1639706222:=
34
2023-01-22
jrmu
host:1639706410=38.87.162.47
35
2023-01-22
jrmu
author:1639706222=jrmu
36
2023-01-22
jrmu
diff:1639706222:1639705382:=34c34%0a%3c $ doas chown -R $USER:commit /var/git%0a---%0a> $ doas chown $USER:commit /var/git%0a38,39d37%0a%3c Next, you can either clone a repo or create a new one:%0a%3c %0a61c59%0a%3c $ got init /var/git/reponame%0a---%0a> $ got init /path/to/repository%0a64c62%0a%3c Replace @@reponame@@ with your actual repo name. For example:%0a---%0a> Replace @@/path/to/repository@@. For example:%0a
37
2023-01-22
jrmu
host:1639706222=38.87.162.47
38
2023-01-22
jrmu
author:1639705382=jrmu
39
2023-01-22
jrmu
diff:1639705382:1639704798:=27,86d26%0a%3c %0a%3c !! Create got directory%0a%3c %0a%3c We are going to place the repo in /var/git:%0a%3c %0a%3c [@%0a%3c $ doas mkdir /var/git%0a%3c $ doas chown $USER:commit /var/git%0a%3c $ cd /var/git%0a%3c @]%0a%3c %0a%3c !!! Clone Repo%0a%3c %0a%3c To clone a repo without encryption ('''WARNING''': insecure):%0a%3c %0a%3c [@%0a%3c $ got clone git://example.com/repo.git%0a%3c @]%0a%3c %0a%3c Replace @@example.com/repo.git@@ with your actual path.%0a%3c %0a%3c HTTP URLs currently requires [[git/usage|git]]:%0a%3c %0a%3c [@%0a%3c $ git clone https://example.com/repo.git%0a%3c @]%0a%3c %0a%3c !!! Create Repo%0a%3c %0a%3c To create an empty repository:%0a%3c %0a%3c [@%0a%3c $ got init /path/to/repository%0a%3c @]%0a%3c %0a%3c Replace @@/path/to/repository@@. For example:%0a%3c %0a%3c [@%0a%3c $ got init ~/ircnowd.git%0a%3c @]%0a%3c %0a%3c This will create a got repo called ircnowd.%0a%3c %0a%3c Afterwards, we need to import the code for the repository:%0a%3c %0a%3c [@%0a%3c $ got import -m "Import sources" -r /path/to/repository /path/to/code%0a%3c @]%0a%3c %0a%3c * @@-m@@ provides the log message for the import.%0a%3c * @@-r@@ provides the repository path.%0a%3c %0a%3c Replace @@/path/to/repository@@ and @@/path/to/code@@. For example:%0a%3c %0a%3c [@%0a%3c $ got import -m "Import sources" -r ~/ircnowd.git ~/ngircd%0a%3c @]%0a%3c %0a%3c This will import the code from @@ngircd@@ into @@ircnowd.git@@%0a%3c .%0a
40
2023-01-22
jrmu
host:1639705382=38.87.162.47
41
2023-01-22
jrmu
author:1639704798=jrmu
42
2023-01-22
jrmu
diff:1639704798:1639669155:minor=3,4c3%0a%3c This guide explains how to create a got repository. It%0a%3c assumes you have already read the [[got/usage|got usage guide]].%0a---%0a> This guide explains how to create a got repository.%0a
43
2023-01-22
jrmu
host:1639704798=38.87.162.47
44
2023-01-22
jrmu
author:1639669155=jrmu
45
2023-01-22
jrmu
diff:1639669155:1639669108:minor=195,196c195,197%0a%3c [[Gotweb/Install|Install Gotweb]]%0a%3c [[Got/Usage|Got usage]]%0a---%0a> [[Cvs/Anoncvs|Anoncvs Guide]]%0a> [[Cvs/Cvsweb|Cvsweb Guide]]%0a> [[Cvs/Intro|CVS Intro]]%0a
46
2023-01-22
jrmu
host:1639669155=38.87.162.47
47
2023-01-22
jrmu
author:1639669108=jrmu
48
2023-01-22
jrmu
diff:1639669108:1639669108:=1,197d0%0a%3c (:title Create Got Repo:)%0a%3c %0a%3c This guide explains how to create a got repository.%0a%3c %0a%3c !! Create commit group%0a%3c %0a%3c First, you may want to create a new group with commit rights:%0a%3c %0a%3c [@%0a%3c $ doas groupadd commit%0a%3c @]%0a%3c %0a%3c For each existing user you want to give commit rights to:%0a%3c %0a%3c [@%0a%3c $ doas usermod -G commit $USER%0a%3c @]%0a%3c %0a%3c For each new user you want to create with commit rights:%0a%3c %0a%3c [@%0a%3c $ doas useradd -G commit $USER%0a%3c @]%0a%3c %0a%3c Replace $USER with the committer's user's name.%0a%3c %0a%3c !! Setting CVSROOT%0a%3c %0a%3c Before we begin, decide where you want the CVS files to be located. You will want to set CVSROOT.%0a%3c %0a%3c You can set it for just the current shell:%0a%3c %0a%3c [@%0a%3c $ export CVSROOT=/path/to/CVS%0a%3c @]%0a%3c %0a%3c Replace @@/path/to/CVS@@ with the actual directory. /CVS is recommended:%0a%3c %0a%3c [@%0a%3c $ export CVSROOT=/CVS%0a%3c @]%0a%3c %0a%3c As a shortcut, you can add this to the bottom of your ~/.profile so you don't have to type it each time:%0a%3c %0a%3c [@%0a%3c $ echo 'CVSROOT="/CVS"' >> ~/.profile%0a%3c @]%0a%3c %0a%3c Once CVSROOT is set, log out and log in. From now on, you can omit the -d argument when working with cvs.%0a%3c %0a%3c !! Create new repo%0a%3c %0a%3c To create a new CVS repository, type:%0a%3c %0a%3c [@%0a%3c $ doas mkdir $CVSROOT%0a%3c $ doas chown $USER:commit $CVSROOT%0a%3c $ cvs init%0a%3c @]%0a%3c %0a%3c Replace @@$USER@@ with the maintainer of CVSROOT.%0a%3c %0a%3c !! Import New Module%0a%3c %0a%3c If you have existing code that you'd like to import to a CVS repository, first change%0a%3c to the folder containing the source code, then type:%0a%3c %0a%3c [@%0a%3c $ cvs import reponame vendortag releasetag%0a%3c @]%0a%3c %0a%3c Replace @@reponame@@, @@vendortag@@, and @@releasetag@@. CVS will put the source files inside a directory named @@reponame@@ inside the CVS root directory. @@vendortag@@ should be replaced with the vendor (the author) of the repository. @@releasetag@@ is the tag for the specific release.%0a%3c %0a%3c For example:%0a%3c %0a%3c [@%0a%3c $ cd ~/ircnowd/%0a%3c $ cvs import ircnowd ircnow start%0a%3c @]%0a%3c %0a%3c '''Note''': CVS does not automatically transform the imported source code into a working directory. As a result, any changes you make to the original source code directory cannot be committed to the CVS repo.%0a%3c %0a%3c To fix this, you will need to checkout the source code. Change your directory to somewhere else to place the new working directory, then type:%0a%3c %0a%3c [@%0a%3c $ cd /path/to/new/directory/%0a%3c $ cvs checkout -P reponame%0a%3c @]%0a%3c %0a%3c Replace @@/path/to/new/directory/@@ with the directory you want the working directory to be in. Then, replace @@reponame@@ with the repository name.%0a%3c %0a%3c Change directory to @@reponame@@ to make changes. Afterwards, use cvs to commit them:%0a%3c %0a%3c [@%0a%3c $ cd reponame%0a%3c ... work on code ...%0a%3c $ cvs commit%0a%3c @]%0a%3c %0a%3c For example, suppose you create a new folder for working directories ~/code/ and then checkout the working directory for ircnowd:%0a%3c %0a%3c [@%0a%3c $ mkdir ~/code/%0a%3c $ cd ~/code/%0a%3c $ cvs checkout -P ircnowd%0a%3c $ cd ~/code/ircnowd/%0a%3c ... work on code ...%0a%3c $ cvs commit%0a%3c @]%0a%3c %0a%3c Now, ~/code/ircnowd will have the working directory for ircnowd. CVS will track changes so that you can commit changes to the CVS repo.%0a%3c %0a%3c If checkout works properly, you can safely delete the old source code directory you imported from (since that one is not tracked by CVS).%0a%3c %0a%3c [@%0a%3c $ rm -rf ~/ircnowd/%0a%3c @]%0a%3c %0a%3c !! Granting commit access%0a%3c %0a%3c You will want to change group ownership and provide group write permissions:%0a%3c %0a%3c [@%0a%3c $ doas chown -R $USER:commit $CVSROOT%0a%3c $ doas chmod -R g+w $CVSROOT%0a%3c @]%0a%3c %0a%3c A sample directory should look like this:%0a%3c %0a%3c [@%0a%3c # ls -lha /CVS%0a%3c total 28%0a%3c drwxr-xr-x 7 jrmu commit 512B Oct 9 06:19 .%0a%3c drwxr-xr-x 10 root wheel 512B Oct 9 06:10 ..%0a%3c drwxrwxr-x 3 jrmu commit 1.0K Apr 29 06:48 CVSROOT%0a%3c drwxrwxr-x 9 jrmu commit 512B May 8 11:42 acopm%0a%3c drwxrwxr-x 2 jrmu commit 1.0K Aug 26 04:17 botnow%0a%3c drwxrwxr-x 8 jrmu commit 512B May 27 16:57 brogue-ce%0a%3c drwxrwxr-x 6 jrmu commit 512B May 7 06:46 ircnowd%0a%3c @]%0a%3c %0a%3c !! Optional: Prevent Shell Access%0a%3c %0a%3c '''Optional''': If your server is not used to provide shell accounts,%0a%3c and all users who connect via ssh are admins, you can add the following to%0a%3c prevent committers from having shell access:%0a%3c %0a%3c First, we create @@/usr/bin/cvs-login.sh@@:%0a%3c %0a%3c [@%0a%3c #!/bin/sh%0a%3c %0a%3c exec /usr/bin/cvs server%0a%3c @]%0a%3c %0a%3c This simple shell script will be used as the login shell. Any time a committer%0a%3c logs in, cvs will immediately be called.%0a%3c %0a%3c We set it to be executable:%0a%3c %0a%3c [@%0a%3c $ doas chown root:wheel /usr/bin/cvs-login.sh%0a%3c $ doas chmod +x /usr/bin/cvs-login.sh%0a%3c @]%0a%3c %0a%3c Next, edit @@/etc/ssh/sshd_config@@:%0a%3c %0a%3c [@%0a%3c Match Group commit,!wheel%0a%3c AllowAgentForwarding no%0a%3c AllowStreamLocalForwarding no%0a%3c DisableForwarding yes%0a%3c PermitListen none%0a%3c PermitOpen none%0a%3c PermitTunnel no%0a%3c PermitUserRC no%0a%3c X11Forwarding no%0a%3c AllowTcpForwarding no%0a%3c PermitTTY no%0a%3c ForceCommand "/usr/bin/cvs-login.sh"%0a%3c @]%0a%3c %0a%3c This will force all users in the commit group who are not in wheel (not%0a%3c administrators) to use /usr/bin/cvs-login.sh. Committers therefore never%0a%3c get shell access; they only get cvs access%0a%3c %0a%3c Restart sshd to apply changes:%0a%3c %0a%3c [@%0a%3c $ doas rcctl restart sshd%0a%3c @]%0a%3c %0a%3c See Also:%0a%3c %0a%3c [[Cvs/Anoncvs|Anoncvs Guide]]%0a%3c [[Cvs/Cvsweb|Cvsweb Guide]]%0a%3c [[Cvs/Intro|CVS Intro]]%0a
49
2023-01-22
jrmu
host:1639669108=38.87.162.47
IRCNow