gh-manager-cli 1.4.2 → 1.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,3 +1,10 @@
1
+ # [1.5.0](https://github.com/wiiiimm/gh-manager-cli/compare/v1.4.2...v1.5.0) (2025-08-31)
2
+
3
+
4
+ ### Features
5
+
6
+ * add fork sync functionality and update documentation ([1d37a10](https://github.com/wiiiimm/gh-manager-cli/commit/1d37a10d90636731c436679b0a4ff2d1c3e1daae))
7
+
1
8
  ## [1.4.2](https://github.com/wiiiimm/gh-manager-cli/compare/v1.4.1...v1.4.2) (2025-08-31)
2
9
 
3
10
 
package/README.md CHANGED
@@ -2,6 +2,27 @@
2
2
 
3
3
  Interactive terminal app to browse and manage your personal GitHub repositories. Built with Ink (React for CLIs) and the GitHub GraphQL API.
4
4
 
5
+ ## Screenshots
6
+
7
+ <div align="center">
8
+
9
+ ### Repository Listing
10
+ Browse your repositories with rich metadata, sorting, and filtering options.
11
+
12
+ <img src="docs/demo_repo_listing.png" alt="Repository listing interface showing repositories with metadata" width="800">
13
+
14
+ ### Authentication Flow
15
+ Secure GitHub token authentication with validation and persistence.
16
+
17
+ <img src="docs/demo_login.png" alt="Login screen prompting for GitHub token" width="800">
18
+
19
+ ### Delete Confirmation
20
+ Safe repository deletion with two-step confirmation process.
21
+
22
+ <img src="docs/demo_delete_confirmation.png" alt="Delete confirmation dialog with security prompts" width="800">
23
+
24
+ </div>
25
+
5
26
  ## Quick Start
6
27
 
7
28
  ```bash
@@ -23,6 +44,7 @@ On first run, you'll be prompted for a GitHub Personal Access Token.
23
44
  - Open in browser (Enter/`O`)
24
45
  - Delete repository (`Del` or `Ctrl+Backspace`) with secure two-step confirmation
25
46
  - Archive/unarchive repositories (`Ctrl+A`) with confirmation prompts
47
+ - Sync forks with upstream (`Ctrl+U`) with automatic conflict detection
26
48
 
27
49
  ### User Interface & Experience
28
50
  - **Keyboard Navigation**: Full keyboard control (arrow keys, PageUp/Down, `Ctrl+G`/`G`)
@@ -124,6 +146,7 @@ Launch the app, then use the keys below:
124
146
  - Confirm: press `Y` or Enter
125
147
  - Cancel: press `C` or Esc
126
148
  - Archive/Unarchive: `Ctrl+A`
149
+ - Sync fork with upstream: `Ctrl+U` (for forks only, shows commit status and handles conflicts)
127
150
  - Logout: `Ctrl+L`
128
151
  - Toggle fork metrics: `F`
129
152
  - Quit: `Q`
package/dist/index.js CHANGED
@@ -9,7 +9,7 @@ var require_package = __commonJS({
9
9
  "package.json"(exports, module) {
10
10
  module.exports = {
11
11
  name: "gh-manager-cli",
12
- version: "1.4.2",
12
+ version: "1.5.0",
13
13
  private: false,
14
14
  description: "Interactive CLI to manage your GitHub repos (personal) with Ink",
15
15
  license: "MIT",
@@ -252,6 +252,7 @@ async function fetchViewerReposPage(client, first, after, orderBy, includeForkTr
252
252
  parent {
253
253
  nameWithOwner
254
254
  defaultBranchRef {
255
+ name
255
256
  target {
256
257
  ... on Commit {
257
258
  history(first: 0) {
@@ -262,6 +263,7 @@ async function fetchViewerReposPage(client, first, after, orderBy, includeForkTr
262
263
  }
263
264
  }
264
265
  defaultBranchRef {
266
+ name
265
267
  target {
266
268
  ... on Commit {
267
269
  history(first: 0) {
@@ -272,7 +274,9 @@ async function fetchViewerReposPage(client, first, after, orderBy, includeForkTr
272
274
  }` : `
273
275
  parent {
274
276
  nameWithOwner
275
- }`}
277
+ }
278
+ defaultBranchRef { name }
279
+ `}
276
280
  }
277
281
  }
278
282
  }
@@ -677,7 +681,8 @@ function RepoList({ token, maxVisibleRows, onLogout }) {
677
681
  try {
678
682
  setSyncing(true);
679
683
  const [owner, repo] = syncTarget.nameWithOwner.split("/");
680
- const result = await syncForkWithUpstream(token, owner, repo);
684
+ const branchName = syncTarget.defaultBranchRef?.name || "main";
685
+ const result = await syncForkWithUpstream(token, owner, repo, branchName);
681
686
  setItems((prev) => prev.map((r) => {
682
687
  if (r.id === syncTarget.id && r.parent && r.defaultBranchRef?.target?.history && r.parent.defaultBranchRef?.target?.history) {
683
688
  return {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "gh-manager-cli",
3
- "version": "1.4.2",
3
+ "version": "1.5.0",
4
4
  "private": false,
5
5
  "description": "Interactive CLI to manage your GitHub repos (personal) with Ink",
6
6
  "license": "MIT",