{"id":17168705,"url":"https://github.com/sanix-darker/ii","last_synced_at":"2026-04-16T12:36:43.763Z","repository":{"id":249729865,"uuid":"832371565","full_name":"Sanix-Darker/ii","owner":"Sanix-Darker","description":"Check if you need to run `xxx install` to sync your dependencies whatever the dev env/stack as a .git/hooks.","archived":false,"fork":false,"pushed_at":"2024-07-22T23:10:59.000Z","size":9,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-01-29T23:27:52.435Z","etag":null,"topics":["bash","git","githooks","githooks-plugin","github","shell"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Sanix-Darker.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-07-22T22:23:12.000Z","updated_at":"2024-07-23T13:39:45.000Z","dependencies_parsed_at":"2024-07-23T02:12:50.659Z","dependency_job_id":null,"html_url":"https://github.com/Sanix-Darker/ii","commit_stats":null,"previous_names":["sanix-darker/ii"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Sanix-Darker%2Fii","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Sanix-Darker%2Fii/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Sanix-Darker%2Fii/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Sanix-Darker%2Fii/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Sanix-Darker","download_url":"https://codeload.github.com/Sanix-Darker/ii/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245330843,"owners_count":20597846,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bash","git","githooks","githooks-plugin","github","shell"],"created_at":"2024-10-14T23:12:38.954Z","updated_at":"2026-04-16T12:36:38.736Z","avatar_url":"https://github.com/Sanix-Darker.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ii\n\nI really don't know how to put this up... let's break that with some use cases :\n\n- You are working on branch x, that is linked to env_x with dependency x, you switch to another branch, x is still in your environment but not in lock/config file, you're out of sync.\n- ~Sometimes~ (**EVERY SINGLE TIME**), you're working on a team project, you often find yourself always checking after a pull/checkout, if **xxx install** was run to be sync with the main(remote) branch, because, deps are added/upgraded overtime...\n\nI think i should be aware if i really need to run that install command or not.\nSo i made `_ii_`(Install It), it's a small **git/hooks** that will notify if you need to run an install command to be sync with the main/master version of the codebase in terms of dependencies.\n\n\nhttps://github.com/user-attachments/assets/6fef9d11-1923-4034-9df7-b3f3af32d862\n\n\n## REQUIREMENTS\n\n- git\n\n## FEATURES\n\nHere's a list of the languages/stacks and their associated package management tools supported by ii:\n\n| Language/Stack       | Package Manager           | Lock/Config File         | Install Command                |\n|----------------------|---------------------------|--------------------------|--------------------------------|\n| Python               | pip                       | requirements.txt         | `pip install -r requirements.txt` |\n| Python               | Poetry                    | poetry.lock              | `poetry install`               |\n| PHP                  | Composer                  | composer.lock            | `composer install`             |\n| JavaScript/Node.js   | npm                       | package-lock.json        | `npm install`                  |\n| JavaScript/Node.js   | Yarn                      | yarn.lock                | `yarn install`                 |\n| JavaScript/Node.js   | pnpm                      | pnpm-lock.yaml           | `pnpm install`                 |\n| Ruby                 | Bundler                   | Gemfile.lock             | `bundle install`               |\n| Python               | Pipenv                    | Pipfile.lock             | `pipenv install`               |\n| Rust                 | Cargo                     | Cargo.lock               | `cargo build`                  |\n| Go                   | Go modules                | go.mod                   | `go mod tidy`                  |\n| Go                   | Dep                       | Gopkg.lock               | `dep ensure`                   |\n| Java                 | Gradle                    | build.gradle             | `gradle build`                 |\n| Java                 | Maven                     | pom.xml                  | `mvn install`                  |\n| General              | Make                      | Makefile                 | `make`                         |\n| Python               | Conda                     | environment.yml          | `conda env create -f environment.yml` |\n| Elixir               | Mix                       | mix.lock                 | `mix deps.get`                 |\n| Erlang               | Rebar                     | rebar.lock               | `rebar3 get-deps`              |\n| Swift                | Carthage                  | Cartfile.resolved        | `carthage bootstrap`           |\n| Swift/Objective-C    | CocoaPods                 | Podfile.lock             | `pod install`                  |\n| Clojure              | Leiningen                 | project.clj              | `lein deps`                    |\n| Clojure              | Tools.deps                | clj-deps.edn             | `clojure -A:deps`              |\n| C++                  | CMake                     | CMakeLists.txt           | `cmake .`                      |\n| Crystal              | Shards                    | shard.lock               | `shards install`               |\n| Scala                | sbt                       | build.sbt                | `sbt update`                   |\n| Clojure              | deps.edn                  | deps.edn                 | `clojure -A:deps`              |\n| PureScript           | Spago                     | spago.dhall              | `spago install`                |\n| Nix                  | Nix                       | default.nix              | `nix-shell`                    |\n| Nix                  | Nix Flakes                | flake.nix                | `nix develop`                  |\n| D                    | Dub                       | dub.json                 | `dub upgrade`                  |\n| D                    | Dub                       | dub.selections.json      | `dub upgrade`                  |\n\n\n## HOW TO USE\n\nPlace all 3 files(post-merge, post-checkout, ii.sh) inside the `.git/hooks` of your project.\nThat's it.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsanix-darker%2Fii","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsanix-darker%2Fii","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsanix-darker%2Fii/lists"}