This is the first step for moving the documentation format from *.txt to the *.rst format. In the last years we've been automatically converting txt files from Steve's markup into RST to generate the documentation pages via Sphinx. The decision has now been made to fully migrate to RST and avoid the conversion in the future. This will enable us to fully use RST and Sphinx to improve the documentation. For the intermediate period, while there are still pending PRs with documentation changes, we will keep both source files and update the RST files accordingly.
129 lines
4.7 KiB
ReStructuredText
129 lines
4.7 KiB
ReStructuredText
Download source via Git
|
|
=======================
|
|
|
|
All LAMMPS development is coordinated through the "LAMMPS GitHub
|
|
site". If you clone the LAMMPS repository onto your local machine, it
|
|
has several advantages:
|
|
|
|
* You can stay current with changes to LAMMPS with a single git
|
|
command.
|
|
* You can create your own development branches to add code to LAMMPS.
|
|
* You can submit your new features back to GitHub for inclusion in
|
|
LAMMPS.
|
|
|
|
You must have `Git <git_>`_ installed on your system to communicate with
|
|
the public Git server for LAMMPS.
|
|
|
|
.. warning::
|
|
|
|
As of Oct 2016, the official home of public LAMMPS
|
|
development is on GitHub. The previously advertised LAMMPS git
|
|
repositories on git.lammps.org and bitbucket.org are now deprecated,
|
|
may not be up-to-date, and may go away at any time.
|
|
|
|
.. _git: http://git-scm.com
|
|
|
|
|
|
|
|
You can follow LAMMPS development on 3 different Git branches:
|
|
|
|
* **stable** : this branch is updated with every stable release
|
|
* **unstable** : this branch is updated with every patch release
|
|
* **master** : this branch continuously follows ongoing development
|
|
|
|
To access the Git repositories on your box, use the clone command to
|
|
create a local copy of the LAMMPS repository with a command like:
|
|
|
|
|
|
.. parsed-literal::
|
|
|
|
git clone -b unstable https://github.com/lammps/lammps.git mylammps
|
|
|
|
where "mylammps" is the name of the directory you wish to create on
|
|
your machine and "unstable" is one of the 3 branches listed above.
|
|
(Note that you actually download all 3 branches; you can switch
|
|
between them at any time using "git checkout <branch name>".)
|
|
|
|
Once the command completes, your directory will contain the same files
|
|
as if you unpacked a current LAMMPS tarball, with the exception, that
|
|
the HTML documentation files are not included. They can be fetched
|
|
from the LAMMPS website by typing "make fetch" in the doc directory.
|
|
Or they can be generated from the content provided in doc/src by
|
|
typing "make html" from the doc directory.
|
|
|
|
After initial cloning, as bug fixes and new features are added to
|
|
LAMMPS, as listed on :doc:`this page <Errors_bugs>`, you can stay
|
|
up-to-date by typing the following Git commands from within the
|
|
"mylammps" directory:
|
|
|
|
|
|
.. parsed-literal::
|
|
|
|
git checkout unstable # not needed if you always stay in this branch
|
|
git checkout stable # use one of the 3 checkout commands
|
|
git checkout master
|
|
git pull
|
|
|
|
Doing a "pull" will not change any files you have added to the LAMMPS
|
|
directory structure. It will also not change any existing LAMMPS
|
|
files you have edited, unless those files have changed in the
|
|
repository. In that case, Git will attempt to merge the new
|
|
repository file with your version of the file and tell you if there
|
|
are any conflicts. See the Git documentation for details.
|
|
|
|
If you want to access a particular previous release version of LAMMPS,
|
|
you can instead "checkout" any version with a published tag. See the
|
|
output of "git tag -l" for the list of tags. The Git command to do
|
|
this is as follows.
|
|
|
|
|
|
.. parsed-literal::
|
|
|
|
git checkout tagID
|
|
|
|
Stable versions and what tagID to use for a particular stable version
|
|
are discussed on :doc:`this page <Errors_bugs>`. Note that this command
|
|
will print some warnings, because in order to get back to the latest
|
|
revision and to be able to update with "git pull" again, you first
|
|
will need to first type "git checkout unstable" (or check out any
|
|
other desired branch).
|
|
|
|
Once you have updated your local files with a "git pull" (or "git
|
|
checkout"), you still need to re-build LAMMPS if any source files have
|
|
changed. To do this, you should cd to the src directory and type:
|
|
|
|
|
|
.. parsed-literal::
|
|
|
|
make purge # remove any deprecated src files
|
|
make package-update # sync package files with src files
|
|
make foo # re-build for your machine (mpi, serial, etc)
|
|
|
|
just as described on the :doc:`Install patch <Install_patch>` doc page,
|
|
after a patch has been installed.
|
|
|
|
.. warning::
|
|
|
|
If you wish to edit/change a src file that is from a
|
|
package, you should edit the version of the file inside the package
|
|
sub-directory with src, then re-install the package. The version in
|
|
the src dir is merely a copy and will be wiped out if you type "make
|
|
package-update".
|
|
|
|
.. warning::
|
|
|
|
The GitHub servers support both the "git://" and
|
|
"https://" access protocols for anonymous read-only access. If you
|
|
have a correspondingly configured GitHub account, you may also use SSH
|
|
with "git@github.com:/lammps/lammps.git".
|
|
|
|
The LAMMPS GitHub project is managed by Christoph Junghans (LANL,
|
|
junghans at lanl.gov), Axel Kohlmeyer (Temple U, akohlmey at
|
|
gmail.com) and Richard Berger (Temple U, richard.berger at
|
|
temple.edu).
|
|
|
|
|
|
.. _lws: http://lammps.sandia.gov
|
|
.. _ld: Manual.html
|
|
.. _lc: Commands_all.html
|