Name | fleximod JSON |
Version |
0.1.7
JSON |
| download |
home_page | |
Summary | Extended support for git-submodule and git-sparse-checkout |
upload_time | 2024-01-15 16:38:31 |
maintainer | jedwards4b |
docs_url | None |
author | Jim Edwards |
requires_python | >=3.6 |
license | MIT License |
keywords |
|
VCS |
|
bugtrack_url |
|
requirements |
No requirements were recorded.
|
Travis-CI |
No Travis.
|
coveralls test coverage |
No coveralls.
|
# git-fleximod
Flexible Submodule Management for Git
## Overview
Git-fleximod is a Python-based tool that extends Git's submodule capabilities, offering additional features for managing submodules in a more flexible and efficient way.
## Installation
#TODO Install using pip:
# pip install git-fleximod
If you choose to locate git-fleximod in your path you can access it via command: git fleximod
## Usage
Basic Usage:
git fleximod <command> [options]
Available Commands:
install: Install submodules according to configuration.
status: Display the status of submodules.
update: Update submodules to the tag indicated in .gitmodules variable fxtag.
Additional Options:
See git fleximod --help for more details.
## Supported .gitmodules Variables
fxtag: Specify a specific tag or branch to checkout for a submodule.
fxrequired: Mark a submodule's checkout behavior, with allowed values:
- T:T: Top-level and required (checked out only when this is the Toplevel module).
- T:F: Top-level and optional (checked out with --optional flag if this is the Toplevel module).
- I:T: Internal and required (always checked out).
- I:F: Internal and optional (checked out with --optional flag).
fxsparse: Enable sparse checkout for a submodule, pointing to a file containing sparse checkout paths.
## Sparse Checkouts
To enable sparse checkout for a submodule, set the fxsparse variable
in the .gitmodules file to the path of a file containing the desired
sparse checkout paths. Git-fleximod will automatically configure
sparse checkout based on this file when applicable commands are run.
See [git-sparse-checkout](https://git-scm.com/docs/git-sparse-checkout#_internalsfull_pattern_set) for details on the format of this file.
## Examples
Here are some common usage examples:
Installing submodules, including optional ones:
```bash
git fleximod install --optional
```
Updating a specific submodule to the fxtag indicated in .gitmodules:
```bash
git fleximod update submodule-name
```
Example .gitmodules entry:
```ini, toml
[submodule "cosp2"]
path = src/physics/cosp2/src
url = https://github.com/CFMIP/COSPv2.0
fxsparse = ../.cosp_sparse_checkout
fxtag = v2.1.4cesm
```
Explanation:
This entry indicates that the submodule named cosp2 at tag v2.1.4cesm
should be checked out into the directory src/physics/cosp2/src
relative to the .gitmodules directory. It should be checked out from
the URL https://github.com/CFMIP/COSPv2.0 and use sparse checkout as
described in the file ../.cosp_sparse_checkout relative to the path
directory.
Additional example:
```ini, toml
[submodule "cime"]
path = cime
url = https://github.com/jedwards4b/cime
fxrequired = T:T
fxtag = cime6.0.198_rme01
```
Explanation:
This entry indicates that the submodule cime should be checked out
into a directory named cime at tag cime6.0.198_rme01 from the URL
https://github.com/jedwards4b/cime. This should only be done if
the .gitmodules file is at the top level of the repository clone.
## Contributing
We welcome contributions! Please see the CONTRIBUTING.md file for guidelines.
## License
Git-fleximod is released under the MIT License.
Raw data
{
"_id": null,
"home_page": "",
"name": "fleximod",
"maintainer": "jedwards4b",
"docs_url": null,
"requires_python": ">=3.6",
"maintainer_email": "",
"keywords": "",
"author": "Jim Edwards",
"author_email": "",
"download_url": "https://files.pythonhosted.org/packages/c8/3a/9b6d1981fbf1446ad5646706e1e6eea3f928e71d29c3e554481eb6db6524/fleximod-0.1.7.tar.gz",
"platform": null,
"description": "# git-fleximod\n\nFlexible Submodule Management for Git\n\n## Overview\n\nGit-fleximod is a Python-based tool that extends Git's submodule capabilities, offering additional features for managing submodules in a more flexible and efficient way.\n\n## Installation\n\n#TODO Install using pip:\n# pip install git-fleximod\n If you choose to locate git-fleximod in your path you can access it via command: git fleximod\n\n## Usage\n\n Basic Usage:\n git fleximod <command> [options]\n Available Commands:\n install: Install submodules according to configuration.\n status: Display the status of submodules.\n update: Update submodules to the tag indicated in .gitmodules variable fxtag.\n Additional Options:\n See git fleximod --help for more details.\n\n## Supported .gitmodules Variables\n\n fxtag: Specify a specific tag or branch to checkout for a submodule.\n fxrequired: Mark a submodule's checkout behavior, with allowed values:\n - T:T: Top-level and required (checked out only when this is the Toplevel module).\n - T:F: Top-level and optional (checked out with --optional flag if this is the Toplevel module).\n - I:T: Internal and required (always checked out).\n - I:F: Internal and optional (checked out with --optional flag).\n fxsparse: Enable sparse checkout for a submodule, pointing to a file containing sparse checkout paths.\n\n## Sparse Checkouts\n\n To enable sparse checkout for a submodule, set the fxsparse variable\n in the .gitmodules file to the path of a file containing the desired\n sparse checkout paths. Git-fleximod will automatically configure\n sparse checkout based on this file when applicable commands are run.\n See [git-sparse-checkout](https://git-scm.com/docs/git-sparse-checkout#_internalsfull_pattern_set) for details on the format of this file.\n\n## Examples\n\nHere are some common usage examples:\n\nInstalling submodules, including optional ones:\n```bash\n git fleximod install --optional\n```\n\nUpdating a specific submodule to the fxtag indicated in .gitmodules:\n\n```bash\n git fleximod update submodule-name\n```\nExample .gitmodules entry:\n```ini, toml\n [submodule \"cosp2\"]\n path = src/physics/cosp2/src\n url = https://github.com/CFMIP/COSPv2.0\n fxsparse = ../.cosp_sparse_checkout\n fxtag = v2.1.4cesm\n```\nExplanation:\n\nThis entry indicates that the submodule named cosp2 at tag v2.1.4cesm\nshould be checked out into the directory src/physics/cosp2/src\nrelative to the .gitmodules directory. It should be checked out from\nthe URL https://github.com/CFMIP/COSPv2.0 and use sparse checkout as\ndescribed in the file ../.cosp_sparse_checkout relative to the path\ndirectory.\n\nAdditional example:\n```ini, toml\n [submodule \"cime\"]\n path = cime\n url = https://github.com/jedwards4b/cime\n fxrequired = T:T\n fxtag = cime6.0.198_rme01\n```\n\nExplanation:\n\nThis entry indicates that the submodule cime should be checked out\ninto a directory named cime at tag cime6.0.198_rme01 from the URL\nhttps://github.com/jedwards4b/cime. This should only be done if\nthe .gitmodules file is at the top level of the repository clone.\n\n## Contributing\n\nWe welcome contributions! Please see the CONTRIBUTING.md file for guidelines.\n\n## License\n\nGit-fleximod is released under the MIT License.\n",
"bugtrack_url": null,
"license": "MIT License",
"summary": "Extended support for git-submodule and git-sparse-checkout",
"version": "0.1.7",
"project_urls": null,
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "daec50be3fcd21dd5a388e6c7543e866de0f2b970bf96e3d401b7077e0fa924b",
"md5": "0c3f081b49746518426ca9809483b456",
"sha256": "bd92e245c1028745a6d6850ff9a21a91915920aee83e66f4b4d882db9a94c9a0"
},
"downloads": -1,
"filename": "fleximod-0.1.7-py3-none-any.whl",
"has_sig": false,
"md5_digest": "0c3f081b49746518426ca9809483b456",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.6",
"size": 13843,
"upload_time": "2024-01-15T16:38:26",
"upload_time_iso_8601": "2024-01-15T16:38:26.784545Z",
"url": "https://files.pythonhosted.org/packages/da/ec/50be3fcd21dd5a388e6c7543e866de0f2b970bf96e3d401b7077e0fa924b/fleximod-0.1.7-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "c83a9b6d1981fbf1446ad5646706e1e6eea3f928e71d29c3e554481eb6db6524",
"md5": "b014cbd2fe2b515b403904570cb62b9d",
"sha256": "870fd9b79b6bfd1bb6ae5192c6b1d89e8ff6c7c567dadaea9dbf48e72fb63366"
},
"downloads": -1,
"filename": "fleximod-0.1.7.tar.gz",
"has_sig": false,
"md5_digest": "b014cbd2fe2b515b403904570cb62b9d",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.6",
"size": 12595,
"upload_time": "2024-01-15T16:38:31",
"upload_time_iso_8601": "2024-01-15T16:38:31.078213Z",
"url": "https://files.pythonhosted.org/packages/c8/3a/9b6d1981fbf1446ad5646706e1e6eea3f928e71d29c3e554481eb6db6524/fleximod-0.1.7.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-01-15 16:38:31",
"github": false,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"lcname": "fleximod"
}