Alyssa Baum
10/13/2023, 5:56 PMamonshiz
10/13/2023, 5:56 PM; gt be
Successfully rebased and updated refs/heads/amonshiz/prdi-1831/include-macos-13.6-snapshots.
WARNING: This command has been renamed and will be fully removed soon. Please use gt modify --interactive-rebase instead.
You can now use gt aliases to configure your own command aliases.
Try gt aliases --legacy to automatically add all of the old shortcuts to your aliases configuration.
Do I need to reload my shell after adding those aliases?Alyssa Baum
10/13/2023, 5:56 PMAlyssa Baum
10/23/2023, 3:03 PM1.0.8
is available for beta!
Installation instructions available here: https://graphite.dev/docs/beta-cli
Release notes:
- Added an --update
option for create
and modify
that stages changes to all already-tracked files.
- Added support for gt get <pr-number>
.
- Added a --comment
flag to submit
which will add a comment with the provided text to the submitted PR.
- Added additional debugging information to the output file of the --debug
flag.
- Fixed a bug where the incorrect version number was displayed after running gt get
for a remote branch.Alyssa Baum
10/25/2023, 9:43 PM1.0.9
is available for beta.
Release notes:
Changelog:
- Improved how PR descriptions are persisted across aborted submit
runs.
- Modified version prompting so users are only asked to upgrade their CLIs once per day.
- Fixed a bug in remote changes detection.Alyssa Baum
11/20/2023, 4:33 PM1.0.10
is available for beta.
Release notes:
- Updated the gt submit --draft
flag to only no longer convert already published PRs back to drafts.
- Added support for team reviewers. Team reviewers can either be specified using gt submit --team-reviewers slug
or through gt submit --reviewers org/slug
.
- Added output to log short
when a branch needs to be fetched from remote (using gt get
).
- Added output after gt checkout
specifying whether a branch needs to be submitted, fetched, or restacked.
- Removed a reference to legacy command names.Alyssa Baum
12/04/2023, 3:30 PM1.0.11
is available for beta.
Release notes:
• Fixed bug where aliases were not respected.
• Added retry when fetching branch from remote fails.Alyssa Baum
12/14/2023, 7:28 PM1.0.13
is available for beta.
Release notes:
• Updated gt --help
to be an overview of gt
and the Graphite workflow.
• Moved the previous command help reference to gt --help --all-commands
.
• Added an inline CLI guide to the Graphite workflow, available underneath gt guide workflow
.
• Fixed bug where "needs restack" was not printing out in gt log short
.amonshiz
12/18/2023, 4:14 PM; gt get amonshiz/add-datadog-callback-requirements
🌲 Pulling main from remote...
main is up to date.
ERROR: Cannot read properties of undefined (reading '0')
This is on a computer that I just reformatted and is fully authed to gt
.amonshiz
12/18/2023, 4:15 PMgt help
only displayed if gt
is not authenticated.Alyssa Baum
12/22/2023, 2:31 PM1.0.14
has been released to beta!
Changelog:
• Improved error messaging when config file is invalid.
• Updated gt submit
behavior when upstack branches have merged.
• Added gt interactive
command to open the Graphite Interactive extension.
• Updated gt auth
to print more information about the user's auth status.
• Fixed an issue where gt track
would hang if no parent was explicitly passed to the command.Stephen Pinkerton
01/04/2024, 5:27 PMDavid Balatero
01/09/2024, 5:23 PM1.1.0
is released to beta!
Changelog:
• Added new gt demo
feature which interactively teaches you how to use gt
to create pull requests and stacks.
◦ Run gt demo pull-request
from any repo to create a sample PR.
◦ Run gt demo stack
from any repo to create a sample stack of PRs.
• Made improvements to gt help --all-commands
◦ Organized the commands into sections, for better scanning & readability
◦ Updated each command description to be shorter on this help page, for better readability
◦ Added docs links to the bottom of the help output
◦ Configured wrap width of the output to be more responsive to your terminal size
◦ Colorized anything in backticks
in the help output
• Fixed error messaging in gt pr
to show the branch name when we couldn't find an open PR for the current branch
• Fixed the copy in gt guide workflow
based on community feedback.
• Fixed gt merge
to correctly handle the case when a branch is locked.
• Fixed a bug with gt get
where it was not correctly checking out the branch after syncing itAlyssa Baum
01/29/2024, 8:20 PM1.1.3
is relased to beta!
Changelog:
• Added an option to change the trunk branch name in gt config
.
• Removed prompt to submit on web when the --no-edit
flag is passed to gt submit
.
• Updated gt --help --all-commands
.
• Added an alias gt --help --all
, which is equivalent to gt --help --all-commands
.
• Added gt completion
to gt --help --all
.Moshe Berman
02/01/2024, 3:33 PMtrunk branch nameDoes this mean support for changing the trunk of a stack in-place?
Taksh Singh
02/07/2024, 10:58 PM1.1.5
has been released to beta!
Changelog:
• Fixed bug in create
and modify
where we showed --update
as an option when there were only unstaged changes (now we only show --all
and --patch
).
• We now show --patch
as an option for create
and modify
even when there are only untracked changes.
• Added interface to let users pick untracked files to track in --patch
mode (in create
and modify
).
• Improved error messaging for gt get
for when we can't find a PR for the requested branch.
• Updated gt get <trunk>
functionality to checkout the trunk branch.
• Improved error messaging for when a user tries to fold a branch into main.
• Added an example to gt fold --help
.
• Fixed bug where gt rename
could cause branches to become untracked.
• Added support for pre-push
git hook.Ben Jaffe
02/08/2024, 12:03 AMBen Jaffe
02/08/2024, 12:05 AMgt ls
. In particular, ordering by date created would be... soo so amazing.Jacob Gold
02/14/2024, 6:45 PM1.2.2
to beta, including three releases worth of notes:
# 1.2.2 2024-02-13
- Adjusted some copy in `gt absorb`.
- Fixed an issue where `gt absorb` only worked when run from the root of a repository.
- Fixed an issue where aborting a `gt create` could leave you in a detached state.
- Added protections against creating server-side PR dependency cycles.
# 1.2.1 2024-02-11
- Fixed an issue where the `gt ab` alias for absorb wasn't recognized.
- Fixed an issue where `gt absorb --patch` hung instead of opening the patch selector.
- Fixed an issue where invalid Graphite metadata would prevent any command from being run.
# 1.2.0 2024-02-09
- Introduced `gt absorb`, which automatically amends staged changes to commits in your stack.
- You can now select which PR template will be used by default in `gt config`.
- `gt checkout -` now selects the last branch that was checked out, just like Git.
- `gt sync` now denotes the currently checked out branch when it was unable to restack it cleanly.
- Added clearer messaging for the action needed to avoid detected merge conflicts on `submit`.
- Fixed an issue where pressing Escape in an interactive prompt selected the current option.
- Fixed an issue where GitHub pull request templates with extensions other than .txt and .md were not detected.
- Fixed an issue where invalid/expired auth on `gt get` resulted in an unclear error message.
- Fixed an issue where `gt get` would not work for stacked branches if using a YubiKey-protected SSH key.
- Fixed an issue where `gt track` would display remote-tracking branches as potential parents.
Jacob Gold
02/14/2024, 6:45 PMgt absorb
a try and let us know what you think!Jacob Gold
02/15/2024, 12:11 AM- Fixed an issue where `gt submit` would fail in repositories using `git-lfs`.
Atlas Wegman
02/16/2024, 8:02 PMgt absorb
on an already commited stack? For example, I have a large branch where I renamed an API across 100 files. I'd like this to be at the bottom (near the trunk) but it's in the middle.Jacob Gold
02/27/2024, 6:21 PM1.2.5
is now in Beta! The biggest change here is a new flow that should help remediate cases where Git commands run outside of Graphite cause branches to diverge from our tracking, but there's some other good stuff too 🙂 deployparrot
# 1.2.5 2024-02-27
- Adjusted the set of branches that might be included in the new prompt to update upstack branches.
- Fixed an issue where staged changes could be discarded inadvertently during a `gt sync`.
- Fixed an issue where `gt demo` would fail on Windows.
- Added an NPM `postinstall` script to ensure NodeJS version compatibility.
# 1.2.4 2024-02-22
- `gt submit` now prompts to update upstack branches with open PRs when run from a mid-stack branch.
- `gt submit` is now able to detect when GitHub/Graphite sync is not enabled for a repository. We'll be rolling out the check for this over the coming weeks.
- A warning is now displayed when branches diverge from Graphite's tracking, and a new flow has been added to `gt track` to remediate diverged branches.
- `gt log` is now sorted stably.
- Fixed the `gt sq` alias for `gt squash`.
- Fixed an issue where `gt submit` would fail (before submitting upstack branches) if run from a merged branch.
- Fixed an issue where `gt submit` would fail if a pre-push hook had spaces in its path.
- Ensured better error messaging for various commands when a rebase is in progress.
- Removed the `--show-delete-progress` flag of `gt submit`.
Moshe Berman
03/06/2024, 4:20 PM• When creating new PRs,will continue to a web browser to edit PR metadata.gt submit
can be passed to use the CLI flow.--cli
Is this configurable in the gt settings? I'd like to use CLI always.
Jacob Gold
03/08/2024, 7:43 PM1.2.7
is now in Beta. Not the most exciting release, but we have some cool stuff in the works!
1.2.7
• Added support for gt demo
to use a temporary repository if run from outside of a repository.
• Added support for gt demo
to be run without authenticating the CLI.
• Fixed an issue where tab autocompletion did not work inside of gt demo
.
• Added support for gt create
to use AI to populate commit message and branch name. This will be rolled out via a server-side feature flag over the coming weeks.
1.2.6
• By default, gt create
will now replace slashes in commit messages when inferring branch names, and will convert uppercase letters to lowercase. Both of these new behaviors can be disabled in gt config
.
• Added individual --edit-title
and --edit-description
flags to gt submit
to allow for editing the PR title and body, respectively. --no-edit-title
and --no-edit-description
can be used to skip the prompts for each. Note that --edit
and --no-edit
will still work as before.
• Added support for gt submit
to use AI to populate PR titles and description. This will be rolled out via a server-side feature flag over the coming weeks.
• When creating new PRs, gt submit
will continue to a web browser to edit PR metadata. --cli
can be passed to use the CLI flow.
• Added a setting to gt config
to toggle the above behavior: i.e., use the CLI instead of web by default. In that case, --web
can be passed to use the web flow.
• Fixed an issue resulting in certain commands failing when using a YubiKey-protected SSH key.
• Fixed an issue where gt demo
would not work on Windows.
• Debug logs are now always written, even when the --debug
flag is not passed.
• The --debug
flag now logs to the terminal as well as to a file.
• gt feedback <message> --with-debug-context
now sends our engineers all debug logs from the past 24 hours.
• Debug logs are cleaned up after 24 hours.Jacob Gold
03/26/2024, 12:49 AMgt sync
and gt get
(and to a lesser extent, gt submit
) to better support collaborative flows. We expect to iterate on this for a bit in the beta group – we currently have the new versions of those commands gated behind a feature flag that checks for CLI v1.3.1, and may bump that value if we decide its not yet ready for general release (in which case you would bump your beta CLI in order to keep testing).
1.3.1
• Updated gt submit
to match the new behavior of gt sync
and gt get
.
• gt submit
now skips branches with no commits between head and base and their descendants, instead of failing outright (GitHub does not allow PRs with no commits).
• gt submit
now prompts to restack if the --restack
flag is not passed and it would fail without restacking.
• Fixed a bug where gt submit
would restack in certain cases when the --restack
flag was not passed.
• Fixed a bug where gt submit
was not prompting to choose between pasting template/commit messages and editing them.
• Fixed a bug where legacy scoped submit commands were not enforcing that branches be restacked before submitting.
• Deleting branches in gt sync
, gt get
, gt submit
, or with gt delete
now prints the SHA the branch was at before deletion like Git, as there is no reflog for deleted branches.
• Added better error messaging for the new version of gt sync
when unauthed.
• Fixed a bug where commands that open a URL would fail if xdg-open
was not installed, instead of printing the URL to the terminal.
• Fixed a bug where gt get
would not set up the remote-tracking branch properly.
• Fixed a bug in the new version of gt get
and gt sync
where branches would not get newly associated with PRs.
• Fixed a typo in gt absorb
.
1.3.0
• This version of the Graphite CLI includes a significant update to gt sync
and gt get
that will be rolled out over the coming weeks via a server-side feature flag.
• The primary goal of these changes is to improve the experience of syncing remote changes to your local branches, ensuring that flows like collaborating on a stack or applying suggested edits to a PR are seamless and reliable.
• Notably, gt sync
now syncs all branches, where previously it just synced trunk. This brings it closer to the behavior of gt get
.
• Conversely, gt get
with no argument passed is essentially "`gt sync` for the currently checked out stack."
• The full behavior is:
a. Update the trunk branch to match remote
b. Clean up branches associated with merged or closed PRs
c. Sync any remote changes to local branches
d. Restack branches as needed
• If you'd like to be included in the initial rollout of these changes, please let us know in the #cli-beta channel on our Community Slack. gt create
now applies the branch prefix to branch names passed in directly (e.g. gt create branch-name
with a prefix of prefix/
will yield a branch called prefix/branch-name
). This behavior can be disabled in gt config
. If the branch name already begins with the prefix, it will not be added again.
• Graphite now sets the environment variable GT
to 1
, which can be checked by subprocesses like an editor or Git hook to determine if they are being run from Graphite.
• Fixed a bug where gt absorb
would fail if the git config to detect copies in diffs was enabled.
• Fixed a bug where gt split --by-hunk
would leave the user in a detached state if interrupted.
• If no changes are staged in a step of gt split --by-hunk
, it will now prompt to stage changes again instead of exiting with an error.
• Slightly updated help text and error messages for gt fold
.Jacob Gold
03/26/2024, 5:57 PMgt submit
in 1.3.1, this should help:
1.3.2
• Fixed a bug where gt submit
would hang in certain cases.Jacob Gold
04/12/2024, 4:48 PMgt submit
could fail in certain cases due to the format of a Git remote URL.
• Fixed an issue where the wrong branch name was referenced by `gt move`'s prompt.
• Fixed an issue where gt absorb
could fail in certain environments.
• Fixed an issue where gt log short
could incorrectly show a branch as "updated remotely" when it was not.
• Added interactivity to gt feedback
.Vampire
04/19/2024, 9:41 PM$ gt --version
1.3.2
$ gt sync
🌲 Pulling master from remote...
UNCAUGHT EXCEPTION: fetch failed
UNCAUGHT EXCEPTION: TypeError: fetch failed
at Object.fetch (node:internal/deps/undici/undici:11457:11)
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async Object.request (C:\Users\bkautler\AppData\Roaming\npm\node_modules\@withgraphite\graphite-cli\graphite.js:3:1303363)
at async i (C:\Users\bkautler\AppData\Roaming\npm\node_modules\@withgraphite\graphite-cli\graphite.js:3:1302781)
at async a (C:\Users\bkautler\AppData\Roaming\npm\node_modules\@withgraphite\graphite-cli\graphite.js:3:1131032)
😿Jacob Gold
04/22/2024, 8:51 PM