branch: elpa-admin
commit 7d2b0faa742f9d0552f00f632fcb2f7238d1e790
Author: Stefan Monnier <monn...@iro.umontreal.ca>
Commit: Stefan Monnier <monn...@iro.umontreal.ca>

    README (Getting the source): Recommend the --single-branch option
    
    Also provide the `git://` URL because the `https` server is not smart,
    so it's *much* less efficient when fetching a single branch.
---
 README | 34 ++++++++++++++++++++++++++++------
 1 file changed, 28 insertions(+), 6 deletions(-)

diff --git a/README b/README
index 712a20cfaa..7f583563e2 100644
--- a/README
+++ b/README
@@ -18,16 +18,28 @@ the [[https://elpa.gnu.org/][GNU ELPA]] and NonGNU ELPA 
archives.
 
 * Getting the source
 
-Start with source that is cloned directly from Savannah.  See 
[[https://savannah.gnu.org/git/?group=emacs][the Savannah page]]
-and look for "GNU ELPA".  Using a clone of a clone does not work.
+Start with source that is cloned directly from Savannah
+(See [[https://savannah.gnu.org/git/?group=emacs][the Savannah page]] and look 
for "ELPA").
+Using a clone of a clone might not work.
+
+The repository is large because it contains all the packages, so you
+will usually want to clone with =--single-branch= to avoid downloading
+a large amount of irrelevant data.  More specifically, here is how you
+can get the source and setup the general infrastructure:
 
-You must then do some setup:
 #+begin_src shell
-   make setup
+  git clone --single-branch git://git.savannah.gnu.org/emacs/elpa.git
+  cd elpa
+  make
 #+end_src
 
-That leaves the =packages= directory empty; you must check out the
-ones you want.
+Where the =Makefile= in the =main= branch is used to automatically
+pull the =elpa-admin= branch to populate the =admin= subdirectory.
+
+However, it leaves the =packages= directory empty; you must check out
+the ones you want.
+
+** Check out all packages
 
 If you wish to check out all the packages into the =packages=
 directory, you can run the command:
@@ -36,6 +48,8 @@ directory, you can run the command:
    make worktrees
 #+end_src
 
+** Check out specific package
+
 You can check out a specific package =<pkgname>= into the =packages=
 directory with this command:
 
@@ -43,6 +57,14 @@ directory with this command:
    make packages/<pkgname>
 #+end_src
 
+The first time you run this command, it just populates that directory.
+After that, it will (re)"build" the package for use in-place, i.e. it will
+create (or refresh) the =<pkgname>-pkg.el= and  =<pkgname>-autoloads.el= files
+and (re)compile the ELisp files under the assumption that you have put
+=.../elpa/packages/= into your =package-directory-list=.
+
+** Updating a package directory
+
 If you already have a =packages/<pkgname>= directory with a previous
 checkout, you can update it like this:
 

Reply via email to