island


Nameisland JSON
Version 1.2.0 PyPI version JSON
download
home_page
Summaryisland generic source manager (like repo in simple mode)
upload_time2024-02-05 11:28:59
maintainer
docs_urlNone
author
requires_python>=3.7
licenseMPL-2
keywords source manager repo qisrc lutin
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI
coveralls test coverage No coveralls.
            Lutin
=====

`island` is a generic source downloader and synchronizer is a FREE software tool.

It is compatible with basic format of repo-git manifest. This project is created to be easiest to read with simple interface
(no internal git usage, but user level git usage) The main point to create the "fork" is the non-support of repo of relativity
in submodule of git (submodule reference with ../xxx.git) This point is really important when you want to have a relocate
manifest and project with submodule. The simpl example is the atria-soft / generic-library / musicdsp that are available on
github, gitlab, bitbucket and personal server.


![https://badge.fury.io/py/island.png](https://badge.fury.io/py/island.png))

Instructions
------------

This is a tool to download ```git``` source repositiry in a versatile worktree

island is under a FREE license that can be found in the LICENSE file.
Any contribution is more than welcome ;)

git repository
--------------

http://github.com/HeeroYui/island/

Documentation
-------------

http://HeeroYui.github.io/island/

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

Requirements: ``Python >= 2.7`` and ``pip``

Just run:

  pip install island

Install pip on debian/ubuntu:

  sudo apt-get install pip

Install pip on ARCH-linux:

  sudo pacman -S pip

Install pip on MacOs:

  sudo easy_install pip

Usage
-----

Select a manifest:

  island init http://github.com/atria-soft/manifest.git

Download and synchronize the sources:

  island sync

Select all branch available in the work-tree: (checkout origin/dev in dev branch and track it, do nothing if the branch does not exist)

  island checkout dev

Show the status of the workspace

  island status

Develop in local (with virtual env):
====================================

see: https://setuptools.pypa.io/en/latest/userguide/development_mode.html

Create your development environment:
```bash
# Create a virtual environment
python -m venv .venv
# Activate the python virtual environment
source .venv/bin/activate
# Install the package in editable mode (dynamic use of files) 
pip install --editable .
```

Run the application . ```island --help```

Manual set in production:
=========================

install generic tools for deployment
```bash
pip3 install twine
```

Create the new version:

```bash
# Clean previous packages
 \rm -rf dist/
# Compile the package
python3 -m build
# Upload the package
python3 -m twine upload dist/*
```


TODO list
---------

  - When sync checkout the new manifest
  - status: show how many time late we are on the branch
  - sync: filter the apply of this cmd
  - create snapshot
  - use a snapshot
  - commit all change in a single commit name and date
  - push all change in the origin branch
  - stash/unstash all change
  - permit to set the pasword when requested by git
  - sync: show download progress
  - support single project mirror
  - support submodule mirror
  - support project upstream
  - support submodule add upstream
  - push modilfication in all late mirorr (force mode optionnal) ==> for automatic server synchronisation in 4 lines
  - a good documation of the format and the usage
  - parallele download / sync / push ...

License (MPL v2.0)
---------------------

Copyright island Edouard DUPIN

Licensed under the Mozilla Public License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

    https://www.mozilla.org/MPL/2.0/

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

            

Raw data

            {
    "_id": null,
    "home_page": "",
    "name": "island",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.7",
    "maintainer_email": "",
    "keywords": "source,manager,repo,qisrc,lutin",
    "author": "",
    "author_email": "Edouard DUPIN <yui.heero@gmail.com>",
    "download_url": "https://files.pythonhosted.org/packages/bd/14/dc5d017f5dd3c9c1c35644c5213acf0a8987d98e444fe3a397a89a3bd8f1/island-1.2.0.tar.gz",
    "platform": null,
    "description": "Lutin\n=====\n\n`island` is a generic source downloader and synchronizer is a FREE software tool.\n\nIt is compatible with basic format of repo-git manifest. This project is created to be easiest to read with simple interface\n(no internal git usage, but user level git usage) The main point to create the \"fork\" is the non-support of repo of relativity\nin submodule of git (submodule reference with ../xxx.git) This point is really important when you want to have a relocate\nmanifest and project with submodule. The simpl example is the atria-soft / generic-library / musicdsp that are available on\ngithub, gitlab, bitbucket and personal server.\n\n\n![https://badge.fury.io/py/island.png](https://badge.fury.io/py/island.png))\n\nInstructions\n------------\n\nThis is a tool to download ```git``` source repositiry in a versatile worktree\n\nisland is under a FREE license that can be found in the LICENSE file.\nAny contribution is more than welcome ;)\n\ngit repository\n--------------\n\nhttp://github.com/HeeroYui/island/\n\nDocumentation\n-------------\n\nhttp://HeeroYui.github.io/island/\n\nInstallation\n------------\n\nRequirements: ``Python >= 2.7`` and ``pip``\n\nJust run:\n\n  pip install island\n\nInstall pip on debian/ubuntu:\n\n  sudo apt-get install pip\n\nInstall pip on ARCH-linux:\n\n  sudo pacman -S pip\n\nInstall pip on MacOs:\n\n  sudo easy_install pip\n\nUsage\n-----\n\nSelect a manifest:\n\n  island init http://github.com/atria-soft/manifest.git\n\nDownload and synchronize the sources:\n\n  island sync\n\nSelect all branch available in the work-tree: (checkout origin/dev in dev branch and track it, do nothing if the branch does not exist)\n\n  island checkout dev\n\nShow the status of the workspace\n\n  island status\n\nDevelop in local (with virtual env):\n====================================\n\nsee: https://setuptools.pypa.io/en/latest/userguide/development_mode.html\n\nCreate your development environment:\n```bash\n# Create a virtual environment\npython -m venv .venv\n# Activate the python virtual environment\nsource .venv/bin/activate\n# Install the package in editable mode (dynamic use of files) \npip install --editable .\n```\n\nRun the application . ```island --help```\n\nManual set in production:\n=========================\n\ninstall generic tools for deployment\n```bash\npip3 install twine\n```\n\nCreate the new version:\n\n```bash\n# Clean previous packages\n \\rm -rf dist/\n# Compile the package\npython3 -m build\n# Upload the package\npython3 -m twine upload dist/*\n```\n\n\nTODO list\n---------\n\n  - When sync checkout the new manifest\n  - status: show how many time late we are on the branch\n  - sync: filter the apply of this cmd\n  - create snapshot\n  - use a snapshot\n  - commit all change in a single commit name and date\n  - push all change in the origin branch\n  - stash/unstash all change\n  - permit to set the pasword when requested by git\n  - sync: show download progress\n  - support single project mirror\n  - support submodule mirror\n  - support project upstream\n  - support submodule add upstream\n  - push modilfication in all late mirorr (force mode optionnal) ==> for automatic server synchronisation in 4 lines\n  - a good documation of the format and the usage\n  - parallele download / sync / push ...\n\nLicense (MPL v2.0)\n---------------------\n\nCopyright island Edouard DUPIN\n\nLicensed under the Mozilla Public License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License.\nYou may obtain a copy of the License at\n\n    https://www.mozilla.org/MPL/2.0/\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n",
    "bugtrack_url": null,
    "license": "MPL-2",
    "summary": "island generic source manager (like repo in simple mode)",
    "version": "1.2.0",
    "project_urls": {
        "Bug Reports": "http://github.com/HeeroYui/island/issues",
        "Homepage": "http://github.com/HeeroYui/island",
        "Source": "http://github.com/HeeroYui/island"
    },
    "split_keywords": [
        "source",
        "manager",
        "repo",
        "qisrc",
        "lutin"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "91bd2efa225460886d09087c87abd1006f86ee18ee2d99b2a0b07e6c504ee4da",
                "md5": "3be30b67f9dc705b02d7358e6e88cb51",
                "sha256": "9f0af13180812cbcad0ef254cfa1035a4bdb9b95f01c98150ae815993619a831"
            },
            "downloads": -1,
            "filename": "island-1.2.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "3be30b67f9dc705b02d7358e6e88cb51",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.7",
            "size": 60979,
            "upload_time": "2024-02-05T11:28:57",
            "upload_time_iso_8601": "2024-02-05T11:28:57.145933Z",
            "url": "https://files.pythonhosted.org/packages/91/bd/2efa225460886d09087c87abd1006f86ee18ee2d99b2a0b07e6c504ee4da/island-1.2.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "bd14dc5d017f5dd3c9c1c35644c5213acf0a8987d98e444fe3a397a89a3bd8f1",
                "md5": "462eb65306b3d2bc5853c43e10acb87e",
                "sha256": "bc5457b6175a852bdeee2a421a57d2a9c7074c346497237d7b9c243ff5e904a5"
            },
            "downloads": -1,
            "filename": "island-1.2.0.tar.gz",
            "has_sig": false,
            "md5_digest": "462eb65306b3d2bc5853c43e10acb87e",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.7",
            "size": 41208,
            "upload_time": "2024-02-05T11:28:59",
            "upload_time_iso_8601": "2024-02-05T11:28:59.198262Z",
            "url": "https://files.pythonhosted.org/packages/bd/14/dc5d017f5dd3c9c1c35644c5213acf0a8987d98e444fe3a397a89a3bd8f1/island-1.2.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-02-05 11:28:59",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "HeeroYui",
    "github_project": "island",
    "travis_ci": true,
    "coveralls": false,
    "github_actions": false,
    "lcname": "island"
}
        
Elapsed time: 0.17851s