{ "info": { "author": "Karan Goel", "author_email": "karan@goel.io", "bugtrack_url": null, "classifiers": [], "description": ".. figure:: http://i.imgur.com/y8g506n.png?1\n :alt: \n\njoe\n===\n\nA ``.gitignore`` magician in your command line. Joe generates\n``.gitignore`` files from the command line for you.\n\n.. figure:: http://i.imgur.com/ghmJLUP.gif\n :alt: \n\nFeatures\n--------\n\n- Written in uncomplicated Python\n- Easy to `install `__\n- Stupidly `easy to use `__\n- Supports all Github-supported ```.gitignore``\n files `__\n- Works on Mac, Linux and Windows\n- Supports other version control systems (``.hgignore``)\n\nInstallation\n------------\n\nOption 1: Homebrew\n~~~~~~~~~~~~~~~~~~\n\n.. code:: bash\n\n $ brew update\n $ brew tap karan/karan\n $ brew install gitignore\n\nOption 2: `Pip `__\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n\n.. code:: bash\n\n $ pip install joe\n\nOption 3: From source\n~~~~~~~~~~~~~~~~~~~~~\n\n.. code:: bash\n\n $ git clone --recursive git@github.com:karan/joe.git\n $ cd joe/\n $ python setup.py install\n\nUsage\n-----\n\nAfter install, make sure to run ``joe update``. This will download all\n``.gitignore`` files in ``~/joe-data/`` folder.\n\nBasic usage\n~~~~~~~~~~~\n\n.. code:: bash\n\n $ joe java # outputs .gitignore file for java to stdout\n\nTo update your ``.gitignore`` files at any time, simply run:\n\n.. code:: bash\n\n $ joe update\n\nOverwrite existing ``.gitignore`` file\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n\n.. code:: bash\n\n $ joe java > .gitignore # saves a new .gitignore file for java\n\nAppend to existing ``.gitignore`` file\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n\n.. code:: bash\n\n $ joe java >> .gitignore # appends to an existing .gitignore file\n\nMultiple languages\n~~~~~~~~~~~~~~~~~~\n\n.. code:: bash\n\n $ joe java node osx > .gitignore # saves a new .gitignore file for multiple languages\n\nCreate and append to a global .gitignore file\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n\nYou can also use joe to append to a global .gitignore. These can be\nhelpful when you want to ignore files generated by an IDE, OS, or\notherwise.\n\n.. code:: bash\n\n $ git config --global core.excludesfile ~/.gitignore # Optional if you have not yet created a global .gitignore\n $ joe OSX SublimeText >> ~/.gitignore\n\nList all available files\n~~~~~~~~~~~~~~~~~~~~~~~~\n\n.. code:: bash\n\n $ joe ls # OR `joe list`\n\nOutput:\n\n actionscript, ada, agda, android, anjuta, appceleratortitanium,\n archives, archlinuxpackages, autotools, bricxcc, c, c++, cakephp,\n cfwheels, chefcookbook, clojure, cloud9, cmake, codeigniter,\n codekit, commonlisp, composer, concrete5, coq, craftcms, cvs, dart,\n darteditor, delphi, dm, dreamweaver, drupal, eagle, eclipse,\n eiffelstudio, elisp, elixir, emacs, ensime, episerver, erlang,\n espresso, expressionengine, extjs, fancy, finale, flexbuilder,\n forcedotcom, fortran, fuelphp, gcov, gitbook, go, gradle, grails,\n gwt, haskell, idris, igorpro, ipythonnotebook, java, jboss,\n jdeveloper, jekyll, jetbrains, joomla, jython, kate, kdevelop4,\n kohana, labview, laravel, lazarus, leiningen, lemonstand,\n libreoffice, lilypond, linux, lithium, lua, lyx, magento, matlab,\n maven, mercurial, mercury, metaprogrammingsystem, meteor,\n microsoftoffice, modelsim, momentics, monodevelop, nanoc, netbeans,\n nim, ninja, node, notepadpp, objective-c, ocaml, opa, opencart,\n oracleforms, osx, packer, perl, phalcon, playframework, plone,\n prestashop, processing, python, qooxdoo, qt, r, rails, redcar,\n redis, rhodesrhomobile, ros, ruby, rust, sass, sbt, scala, scons,\n scrivener, sdcc, seamgen, sketchup, slickedit, stella, sublimetext,\n sugarcrm, svn, swift, symfony, symphonycms, tags, tex, textmate,\n textpattern, tortoisegit, turbogears2, typo3, umbraco, unity,\n vagrant, vim, virtualenv, visualstudio, vvvv, waf, webmethods,\n windows, wordpress, xcode, xilinxise, xojo, yeoman, yii,\n zendframework, zephir\n\nBONUS ROUND: Alternate version control software\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n\nJoe isn't **just** a generator for ``.gitignore`` files. You can use it\nand its output wherever a SCM is used.\n\n.. code:: bash\n\n $ joe java > .hgignore\n\nContributing\n------------\n\nBug Reports & Feature Requests\n^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n\nPlease use the `issue tracker `__\nto report any bugs or file feature requests.\n\nDeveloping\n^^^^^^^^^^\n\nPRs are welcome. To begin developing, do this:\n\n.. code:: bash\n\n # make virtual env\n $ git clone --recursive git@github.com:karan/joe.git\n $ cd joe/\n $ python joe/joe.py java\n\n``tool.sh``\n^^^^^^^^^^^\n\nThis is a handly script that automates a lot of developing steps.\n\n.. code:: bash\n\n USAGE:\n $ tool.sh [-h|--help] COMMAND\n\n EXAMPLES:\n $ tool.sh readme Generate README.rst from README.md\n $ tool.sh test Upload release to testpypi\n $ tool.sh prod Upload release to prod pypi\n\nMake sure you have a file ``.pypirc`` in ``~/`` in the following format:\n\n::\n\n [distutils]\n index-servers =\n pypi\n pypitest\n\n [pypi]\n repository: https://pypi.python.org/pypi\n username: <<>>\n password: <<>>\n\n [pypitest]\n repository: https://testpypi.python.org/pypi\n username: <<>>\n password: <<>>", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://github.com/karan/joe", "keywords": "gitignore,git,github,command line,cli", "license": "MIT", "maintainer": null, "maintainer_email": null, "name": "joe", "package_url": "https://pypi.org/project/joe/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/joe/", "project_urls": { "Download": "UNKNOWN", "Homepage": "http://github.com/karan/joe" }, "release_url": "https://pypi.org/project/joe/0.0.7/", "requires_dist": null, "requires_python": null, "summary": "joe generates .gitignore files from the command line for you.", "version": "0.0.7" }, "last_serial": 1973319, "releases": { "0.0.2": [ { "comment_text": "", "digests": { "md5": "e52fa0b4b191f6f6e8d89f6a03392a72", "sha256": "a8a5426cf4d94bc1cc9b4b1ccc3fc6fe5a0bdd4eb1dde71c328bbc9adc9ca248" }, "downloads": -1, "filename": "joe-0.0.2.tar.gz", "has_sig": false, "md5_digest": "e52fa0b4b191f6f6e8d89f6a03392a72", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 20568, "upload_time": "2015-01-12T05:09:37", "url": "https://files.pythonhosted.org/packages/10/b8/e44e6e65e2a4f82df3b960c939c878b727812a0134935690ced6bf57672f/joe-0.0.2.tar.gz" } ], "0.0.3": [ { "comment_text": "", "digests": { "md5": "db856945d8720420de51c7d1a2fb617b", "sha256": "1888fc4a6701c4725317e6f1f763c89d237422ea214cf86982f57e253cf0a737" }, "downloads": -1, "filename": "joe-0.0.3.tar.gz", "has_sig": false, "md5_digest": "db856945d8720420de51c7d1a2fb617b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 22524, "upload_time": "2015-01-14T19:47:07", "url": "https://files.pythonhosted.org/packages/12/ca/6c2df213033b18e4daddb01b8d71fe7838783730cb52ed188f8885edd6e8/joe-0.0.3.tar.gz" } ], "0.0.4": [ { "comment_text": "", "digests": { "md5": "321701bdeaa5970a44daeef8a121b8f8", "sha256": "a8f378c274ede1e0afaa855465aa52474fa8490fb535fc106e8c447e74d3eb45" }, "downloads": -1, "filename": "joe-0.0.4.tar.gz", "has_sig": false, "md5_digest": "321701bdeaa5970a44daeef8a121b8f8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4998, "upload_time": "2015-01-15T19:15:02", "url": "https://files.pythonhosted.org/packages/18/66/3d2e5e3c3259d319960b5c1394a25cd08dc71468203ec3e559e15531f0a0/joe-0.0.4.tar.gz" } ], "0.0.5": [ { "comment_text": "", "digests": { "md5": "a3f3d65301a260b64a096fc3c7607677", "sha256": "4b79e10ba4d14e09becff14a76f2e116e02ae4895a06810e59545c1a6cfe6af9" }, "downloads": -1, "filename": "joe-0.0.5.tar.gz", "has_sig": false, "md5_digest": "a3f3d65301a260b64a096fc3c7607677", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 31966, "upload_time": "2015-01-15T22:26:36", "url": "https://files.pythonhosted.org/packages/49/b8/1c0a95b0a38c50dfcb94a90454d5486d3f60d33a5e26210f272a9813518e/joe-0.0.5.tar.gz" } ], "0.0.6": [ { "comment_text": "", "digests": { "md5": "353004dbf2dea73f11ac1302caacf451", "sha256": "3bd5cbdb169d80646e0bdd419802c12f1ee430b8904935a26ec30e835d2ab3e6" }, "downloads": -1, "filename": "joe-0.0.6.tar.gz", "has_sig": false, "md5_digest": "353004dbf2dea73f11ac1302caacf451", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 32239, "upload_time": "2015-03-14T16:31:01", "url": "https://files.pythonhosted.org/packages/06/b5/1587cba5d1520fced452b5ffaaafec397b7a6fd2a0ee28c9280a9c25e409/joe-0.0.6.tar.gz" } ], "0.0.7": [ { "comment_text": "", "digests": { "md5": "7bde9b37b0fa55b09838d108c849c3f8", "sha256": "51396a06ee83694f48a16bb4e78f4bd3ee27a30809b19f7ede4881b7366539c7" }, "downloads": -1, "filename": "joe-0.0.7.tar.gz", "has_sig": false, "md5_digest": "7bde9b37b0fa55b09838d108c849c3f8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 32564, "upload_time": "2016-02-24T04:45:50", "url": "https://files.pythonhosted.org/packages/dc/66/e12b2ff2339e59c523879d1a7703ffdd0f3ea04fb5b90e604bdf7a7dc90b/joe-0.0.7.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "7bde9b37b0fa55b09838d108c849c3f8", "sha256": "51396a06ee83694f48a16bb4e78f4bd3ee27a30809b19f7ede4881b7366539c7" }, "downloads": -1, "filename": "joe-0.0.7.tar.gz", "has_sig": false, "md5_digest": "7bde9b37b0fa55b09838d108c849c3f8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 32564, "upload_time": "2016-02-24T04:45:50", "url": "https://files.pythonhosted.org/packages/dc/66/e12b2ff2339e59c523879d1a7703ffdd0f3ea04fb5b90e604bdf7a7dc90b/joe-0.0.7.tar.gz" } ] }