You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+19-6Lines changed: 19 additions & 6 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -204,7 +204,7 @@ Here's what happens during `dotbins sync`:
204
204
205
205
1.**Version Detection**:
206
206
207
-
- Checks each tool's current version in `versions.json`
207
+
- Checks each tool's current version in `manifest.json`
208
208
- Queries GitHub API for the latest release of each tool
209
209
210
210
2.**Smart Updates**:
@@ -220,10 +220,15 @@ Here's what happens during `dotbins sync`:
220
220
- Can be limited to current system only: `dotbins sync -c`
221
221
222
222
4.**File Generation**:
223
-
- Updates `versions.json` with new version information
223
+
- Updates `manifest.json` with new version information
224
224
- Regenerates shell integration scripts with PATH and tool configurations
225
225
- Creates a README in the tools directory with installation status
226
226
227
+
5.**Pinning to Manifest**:
228
+
229
+
- Use the `dotbins sync --pin-to-manifest` CLI flag to force `sync` to use the tags already recorded in `manifest.json`.
230
+
- This ignores the latest release information from GitHub and ensures that the installed versions match exactly what's in your manifest, which is useful for reproducibility or if your manifest file is version-controlled.
231
+
227
232
Example update workflow:
228
233
229
234
```bash
@@ -239,7 +244,10 @@ dotbins sync --current
239
244
# Force reinstall everything, even if up to date
240
245
dotbins sync --force
241
246
242
-
# See what would be updated without making changes
247
+
# Update tools using only the versions recorded in manifest.json
0 commit comments