# SANE - git Access

The SANE Project is in the process of relocating to GitLab.com.

git, the version control system invented by Linus Torvalds and used for the Linux kernel among other things, is used to develop SANE. To get the latest SANE software (sane-backends and sane-frontends) our git repositories can be used. But keep in mind that the software in git is not tested so the risk of bugs is much higher than with stable releases.

There is development and anonymous git access. If you are not a developer, please use the anonymous access methods as mentioned below.

## Anonymous git Access (Read-Only)

The git repositories are available anonymously through the HTTPS access method.

You can clone from the following URIs:

- https://gitlab.com/sane-project/backends.git
- https://gitlab.com/sane-project/frontends.git
- https://gitlab.com/sane-project/website.git

If you just want to look at one file and don't want to download the whole git repository, you can use browse the repository trees at:

- https://gitlab.com/sane-project/backends/tree/master
- https://gitlab.com/sane-project/frontends/tree/master
- https://gitlab.com/sane-project/website/tree/master

## Developer Access to git (Read-Write)

If you intend to do development, login at GitLab.com and request access to the group or a specific project. Development git access is done by SSH:

- git@gitlab.com:sane-project/backends.git
- git@gitlab.com:sane-project/frontends.git
- git@gitlab.com:sane-project/website.git

Available git repositories:

- backends: the main SANE package containing the SANE libraries, all the backends and documentation.
- frontends: various frontends for SANE, including graphical frontends.
- website: Our web pages. Before changing anything, be sure you know what you do. Ask sane-devel, if in doubt. The HTML pages are automatically updated when any change is done to the tree. Also, the HTML lists of scanners/backends supported by the git version of SANE is automatically created when changing any .desc file.

The rules are pretty simple: If you change anything in your backend, do whatever you want. Just don't break compilation :-). Don't change backends of other active developers. For backends of non-active developers or any other code you should either know what you are doing or ask on sane-devel if the change is acceptable. Fixing spelling mistakes or broken links in the HTML pages is appreciated. Before doing major changes please ask on sane-devel.

When committing work to sane-backends or sane-frontends, make sure to write a descriptive commit message. The format is simple, a short single line summary, optionally followed by a longer explanation of why things were changed. For large changes, including a summary of what changed may be helpful too. Example:

    niash.c: Add argument screening to sane_control_option

    This prevents access to non-existing array elements as well as
    potential NULL dereferences.

    Fixes #315132.

Commit messages will be collected in a ChangeLog file for inclusion in the release by the release manager. There is no need to update the ChangeLog file yourself. People using the "bleeding edge" are supposed to have convenient access to the `git log` output.

## sane-commit Mailing list

If you are interested in the changes to the SANE git trees, subscribe to the sane-commit mailing list.

SANE homepage
Contact