Author: pierre Date: Tue Jan 5 07:22:37 2021 New Revision: 12088 Log: editor-manual-git: changes for chapter 2
Added: branches/editor-manual-git/chapter02/anongit.xml - copied, changed from r12087, branches/editor-manual-git/chapter02/anonsvn.xml branches/editor-manual-git/chapter02/gitssh.xml - copied unchanged from r12087, branches/editor-manual-git/chapter02/svnssh.xml Deleted: branches/editor-manual-git/chapter02/anonsvn.xml branches/editor-manual-git/chapter02/svnssh.xml Modified: branches/editor-manual-git/chapter01/introduction.xml branches/editor-manual-git/chapter02/chapter02.xml branches/editor-manual-git/chapter02/introduction.xml Modified: branches/editor-manual-git/chapter01/introduction.xml ============================================================================== --- branches/editor-manual-git/chapter01/introduction.xml Mon Jan 4 11:56:30 2021 (r12087) +++ branches/editor-manual-git/chapter01/introduction.xml Tue Jan 5 07:22:37 2021 (r12088) @@ -10,14 +10,14 @@ <para> LFS development takes place using three main systems. Firstly, - the mailing lists <email>lfs-b...@gimli.linuxfromscratch.org</email>, - <email>lfs-...@gimli.linuxfromscratch.org</email> and (to a lesser extent) - <email>lfs-supp...@gimli.linuxfromscratch.org</email>. Secondly the Trac + the mailing lists <email>lfs-book@lists.linuxfromscratch.org</email>, + <email>lfs-...@lists.linuxfromscratch.org</email> and (to a lesser extent) + <email>lfs-supp...@lists.linuxfromscratch.org</email>. Secondly the Trac bug tracking system, and thirdly the Git server where the book itself is stored. All of these services are provided by the server <userinput>linuxfromscratch.org</userinput> also known as - <userinput>gimli.linuxfromscratch.org</userinput> or more usually, - <userinput>gimli</userinput>. This single server provides mailing + <userinput>lists.linuxfromscratch.org</userinput> or more usually, + <userinput>lists</userinput>. This single server provides mailing lists, web hosting, Git hosting, Trac and basically everything we use to work on the LFS project. </para> @@ -38,9 +38,9 @@ you are logged in whenever you wish to perform such an action. You can query and read the trac database without logging in or creating a user. Note that all ticket messages are copied to the - <email>lfs-b...@gimli.linuxfromscratch.org</email> mailing list and that + <email>lfs-book@lists.linuxfromscratch.org</email> mailing list and that all editors should be subscribed to this and the - <email>lfs-...@gimli.linuxfromscratch.org</email> list at a minimum. + <email>lfs-...@lists.linuxfromscratch.org</email> list at a minimum. </para> <para> Copied and modified: branches/editor-manual-git/chapter02/anongit.xml (from r12087, branches/editor-manual-git/chapter02/anonsvn.xml) ============================================================================== --- branches/editor-manual-git/chapter02/anonsvn.xml Mon Jan 4 11:56:30 2021 (r12087, copy source) +++ branches/editor-manual-git/chapter02/anongit.xml Tue Jan 5 07:22:37 2021 (r12088) @@ -4,20 +4,22 @@ %general-entities; ]> -<sect1 id="ch02-anonsvn"> +<sect1 id="ch02-anongit"> <title>Anonymous Access</title> -<?dbhtml filename="anonsvn.html"?> +<?dbhtml filename="anongit.html"?> <para>To get anonymous access, simply use the following commands (note that these assume you are using bash or a similar shell:</para> -<screen><userinput>svn checkout svn://svn.linuxfromscratch.org/LFS/trunk/BOOK lfs-trunk</userinput></screen> +<screen><userinput>git clone git://gimli.linuxfromscratch.org/LFS/ lfs-git</userinput></screen> -<para>This will <quote>check out</quote> the current revision of the LFS book -into a directory named <filename class="directory">lfs-trunk</filename>. When -you wish to update your local copy (often called a working copy), simply -<command>cd</command> into the directory and run:</para> +<para>This will copy the public repository to a subdirectory of the <filename +class="directory">lfs-git</filename> directory, then checkout the master +branch to that directory. It will also set the local repository to track +the master branch of the public repository, so that you can +update your local repository by simply running (after changing directory to +<filename class="directory">lfs-git</filename>):</para> -<screen><userinput>svn update</userinput></screen> +<screen><userinput>git pull</userinput></screen> </sect1> Modified: branches/editor-manual-git/chapter02/chapter02.xml ============================================================================== --- branches/editor-manual-git/chapter02/chapter02.xml Mon Jan 4 11:56:30 2021 (r12087) +++ branches/editor-manual-git/chapter02/chapter02.xml Tue Jan 5 07:22:37 2021 (r12088) @@ -10,8 +10,8 @@ <?dbhtml dir="chapter02"?> <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="introduction.xml"/> - <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="anonsvn.xml"/> - <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="svnssh.xml"/> + <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="anongit.xml"/> + <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="gitssh.xml"/> </chapter> Copied: branches/editor-manual-git/chapter02/gitssh.xml (from r12087, branches/editor-manual-git/chapter02/svnssh.xml) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ branches/editor-manual-git/chapter02/gitssh.xml Tue Jan 5 07:22:37 2021 (r12088, copy of r12087, branches/editor-manual-git/chapter02/svnssh.xml) @@ -0,0 +1,62 @@ +<?xml version="1.0" encoding="ISO-8859-1"?> +<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN" "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [ + <!ENTITY % general-entities SYSTEM "../general.ent"> + %general-entities; +]> + +<sect1 id="ch02-svnssh"> +<title>Subversion SSH Access (for editors)</title> +<?dbhtml filename="svnssh.html"?> + +<para>For editors, access is slightly more complicated. You first of all need +to generate an ssh key-pair. You then need to upload your public key into your +<filename>~/.ssh</filename> directory on belgarath. To generate the keys run: +</para> + +<para><screen><userinput>ssh-keygen -t dsa</userinput></screen></para> + +<para>When prompted as to where to save them, it's probably best to leave +them in .ssh (as <filename>id_dsa</filename> and +<filename>id_dsa.pub</filename>) unless you already have ssh keys there. +When prompted for a passphrase just press enter (unless you want to have +to give the phrase <emphasis>every</emphasis> time you perform a subversion +operation. But, since the same passphrase will be used when you log in to +<emphasis>belgarath</emphasis> over ssh, it may be advisable to have some +security in place. Having generated your keys, upload +<filename>~/.ssh/id_dsa.pub</filename> to belgarath and move it to +<filename>~/.ssh/authorized_keys2</filename> <emphasis>on +belgarath</emphasis>. (Your local copy of <filename>id_dsa</filename> +and <filename>id_dsa.pub</filename> should remain untouched by +this.) Make sure that the ~/.ssh directory on belgarath is mode 700:</para> + +<screen><userinput>chmod -R 700 ~/.ssh</userinput></screen> + +<para>Once you have this setup, try to checkout the latest LFS book revision by +running:</para> + +<screen><userinput>svn checkout svn+ssh://svn.linuxfromscratch.org/LFS/trunk/BOOK lfs-trunk +</userinput></screen> + +<para>If this works, you'll checkout a copy of the current book to +<filename class="directory">lfs-trunk</filename> and you will have your own +local working copy. You will also have write access so from now on be extra +careful, but note that <emphasis>no</emphasis> changes will be made until you +issue a <userinput>svn commit</userinput> command.</para> + +<para>The above is fine for working in trunk, and you can checkout an individual +branch in a similar manner. But, merging changes between branches is much +easier if you check out the whole tree by running:</para> + +<screen><userinput>svn checkout svn+ssh://svn.linuxfromscratch.org/LFS LFS +</userinput></screen> + +<para>The drawback to checking out the whole tree is that you will currently +get about 102M of data instead of 5M.</para> + +<para>As with anonymous access, you can update your local copy by simply +<command>cd</command>'ing into the LFS directory and running:</para> + +<para><screen><userinput>svn update</userinput></screen></para> + + +</sect1> Modified: branches/editor-manual-git/chapter02/introduction.xml ============================================================================== --- branches/editor-manual-git/chapter02/introduction.xml Mon Jan 4 11:56:30 2021 (r12087) +++ branches/editor-manual-git/chapter02/introduction.xml Tue Jan 5 07:22:37 2021 (r12088) @@ -8,16 +8,37 @@ <title>Introduction</title> <?dbhtml filename="introduction.html"?> -<para>The belgarath Subversion server provides services for all of the *LFS -projects (and some others). The tree which we are interested in for -LFS editing is (unsurprisingly) the LFS tree. A complete list of the +<para>The gimli Git server provides repositories for all of the *LFS +projects (and some others). The repository which we are interested in for +LFS editing is (unsurprisingly) the LFS repository. A complete list of the modules which are available can be found using the Trac source browser interface at <ulink url="http://wiki.linuxfromscratch.org/lfs/browser"/>.</para> -<para>There are two types of Subversion access provided to the LFS tree. +<para>There are two types of Git access provided to the LFS tree. Firstly, there is anonymous read-only access which anyone can use. Secondly, there is read-write access granted to active editors who have -accounts on belgarath.</para> +accounts on gimli.</para> +<note> + <title>Note to Subversion Users</title> + <para> + Subversion is a centralized version control system, which means there + is a unique repository on the server, and that users can + <emphasis>check out</emphasis> that repository to a working directory + on their local machine. Users with write access can then + <emphasis>commit</emphasis> their modifications to the repository + on the server. + </para> + <para> + Git is a distributed version control system, which means that all users + have their own repository. The repository on the server is nothing more + than the others, except that a public access is granted to it. The action + of copying the repository from the server to the local machine is named + <emphasis>cloning</emphasis>. Checking out and committing thus only occur + locally. The action of synchronizing the public repository with the + local one is named <emphasis>pull</emphasis> (public to local) or + <emphasis>push</emphasis> (local to public for users with write access). + </para> +</note> </sect1> -- http://lists.linuxfromscratch.org/listinfo/lfs-book FAQ: http://www.linuxfromscratch.org/blfs/faq.html Unsubscribe: See the above information page