Skip to content

Commit

Permalink
Update README.rst
Browse files Browse the repository at this point in the history
Clarify the difference between include/exclude and group search
  • Loading branch information
ezbz authored Jul 2, 2024
1 parent 65b1e2d commit f16f736
Showing 1 changed file with 4 additions and 2 deletions.
6 changes: 4 additions & 2 deletions README.rst
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,6 @@ Purpose
Gitlabber clones or pulls all projects under a subset of groups / subgroups by building a tree from the GitLab API and allowing you to specify which subset of the tree you want to clone using glob patterns and/or regex expressions.



Installation
------------

Expand All @@ -45,7 +44,8 @@ Installation
Usage
-----

* Arguments can be provided via the CLI arguments directly or via environment variables::
* Arguments can be provided via the CLI arguments directly or via environment variables:

+---------------+---------------+---------------------------+
| Argument | Flag | Environment Variable |
+===============+===============+===========================+
Expand Down Expand Up @@ -78,6 +78,8 @@ Usage
* To see how to use glob patterns and regex to filter tree nodes, see the `globre project page <https://pypi.org/project/globre/#details>`_.

* Include/Exclude patterns do not work at the API level but work on the results returned from the API, for large Gitlab installations this can take a lot of time, if you need to reduce the amound of API calls for such projects use the ``--group-search`` parameter to search only for the top level groups the interest you using the `Gitlab Group Search API <https://docs.gitlab.com/ee/api/groups.html#search-for-group>` which allows you to do a partial like query for a Group's path or name

* Cloning vs Pulling: when running Gitlabber consecutively with the same parameters, it will scan the local tree structure; if the project directory exists and is a valid git repository (has .git folder in it) Gitlabber will perform a git pull in the directory, otherwise the project directory will be created and the GitLab project will be cloned into it.

* Cloning submodules: use the ``-r`` flag to recurse git submodules, uses the ``--recursive`` for cloning and utilizes `GitPython's smart update method <https://github.com/gitpython-developers/GitPython/blob/20f4a9d49b466a18f1af1fdfb480bc4520a4cdc2/git/objects/submodule/root.py#L67>`_ for updating cloned repositories
Expand Down

0 comments on commit f16f736

Please sign in to comment.