Based on your script, which involves generating podfile entries and comparing Podfile.lock files, here's a README outline that explains how to use it. You can customize this template to better fit your script's specifics and requirements.
Podfile Utilities Script
This script provides utilities for iOS development with CocoaPods, including generating podfile entries for new dependencies and comparing differences between Podfile.lock
files. It's designed to facilitate the management of dependencies in large-scale iOS projects.
Features
- Generate Podfile Entries: Automatically generates podfile entries for dependencies specified in a configuration file.
- Compare Podfile.lock Files: Compares two
Podfile.lock
files and highlights the added or removed dependencies, similar to a git diff.
Requirements
- Ruby (version 2.5 or later)
- JSON files for specifying dependencies
Usage
Generating Podfile Entries
To generate new podfile entries based on a JSON configuration:
ruby check_dependencies.rb gen_pod --lockPath <path_to_Podfile.lock> --depWay <path_or_branch> --configPath <path_to_config.json>
lockPath
: Path to your Podfile.lock
.depWay
: Specify "path" or "branch" to indicate how the dependencies are to be fetched.configPath
: Path to your JSON configuration file listing the dependencies.
Example JSON Configuration (gen_pod_config.json
):
{
"A": {
"branch": "release",
"path": "/path/to/A",
"git_url": "git@github.com:Example/A.git"
},
"B": {
"branch": "release",
"path": "/path/to/B",
"git_url": "git@github.com:Example/B.git"
}
}
Comparing Podfile.lock Files
To compare two Podfile.lock
files and list differences in dependencies:
ruby check_dependencies.rb dif_pod --oldLockPath <path_to_old_Podfile.lock> --newLockPath <path_to_new_Podfile.lock> [--configPath <path_to_config.json>]
oldLockPath
: Path to the older Podfile.lock
.newLockPath
: Path to the newer Podfile.lock
.configPath
(optional): Path to a JSON configuration file specifying which libraries to include in the comparison.
Example JSON Configuration (dif_pod_config.json
):
[
"A",
"B"
]
Configuration
The configuration file for generating podfile entries should list each dependency along with its fetch method (path or branch) and relevant details. For comparing Podfile.lock
files, the configuration file (optional) should list the names of the libraries to be included in the comparison.
Notes
- Ensure the JSON configuration files are correctly formatted and located at the specified path.
- The script provides output similar to git diff, with dependencies being added marked in green and those being removed marked in red.
Contributing
Feel free to fork this repository and submit pull requests to contribute to its development.
License
Specify your license or leave it blank if you haven't decided on one yet.
Remember to replace placeholder texts with actual information relevant to your script and project. This README provides a basic structure and explanation for users on how to utilize your script effectively.