lazygit/pkg/commands/git_commands
Stefan Haller 0864affc8f Fix checking out a different branch while pushing a branch for the first time
When pushing a branch that didn't have an upstream yet, we use the command line

  git push --set-upstream origin HEAD:branch-name

The HEAD: part of this is too unspecific; when checking out a different branch
while the push is still running, then git will set the upstream branch on the
newly checked out branch, not the branch that was being pushed. This might be
considered a bug in git; you might expect that it resolves HEAD at the beginning
of the operation, and uses the result at the end.

But we can easily work around this by explicitly supplying the real branch name
instead of HEAD.
2025-01-26 10:22:19 +01:00
..
bisect.go rename sha to hash 9, case: Sha 2024-04-12 08:33:47 +02:00
bisect_info.go rename sha to hash 2 2024-04-12 08:33:47 +02:00
blame.go Add command to find base commit for creating a fixup 2024-01-10 09:11:40 +01:00
branch.go Add '--' to 'git rev-list' to disambiguate branch name from path 2025-01-19 14:33:42 +01:00
branch_loader.go Change direct access to Common.UserConfig to a getter 2024-08-18 10:24:52 +02:00
branch_loader_test.go Add ahead/behind information for @{push} 2024-05-19 09:44:38 +02:00
branch_test.go Allow deleting a range selection of branches 2024-12-01 10:59:54 +01:00
commit.go Fix copying commit author to clipboard 2024-09-23 09:47:14 +02:00
commit_file_loader.go Set diff.noprefix=false for all other diff commands too 2024-02-18 15:22:43 +01:00
commit_file_loader_test.go Merge loaders package into git_commands package 2022-11-14 18:11:45 +11:00
commit_loader.go Show "exec" todos in the list of rebase todos 2024-06-12 12:44:33 +02:00
commit_loader_test.go Store Common instead of just the list of configured main branches in MainBranches 2024-08-18 10:24:52 +02:00
commit_test.go use unsigned integer in test and fix CI/linter complaint 2024-11-19 08:21:19 +11:00
common.go Remove sync mutex 2023-10-08 18:45:36 +02:00
config.go Change direct access to Common.UserConfig to a getter 2024-08-18 10:24:52 +02:00
custom.go Construct arg vector manually rather than parse string 2023-05-23 19:49:19 +10:00
deps_test.go Change direct access to Common.UserConfig to a getter 2024-08-18 10:24:52 +02:00
diff.go Combine GetPathDiff and GetAllDiff into one command (GetDiff) 2025-01-07 17:46:51 +01:00
file.go Change direct access to Common.UserConfig to a getter 2024-08-18 10:24:52 +02:00
file_loader.go Add user config gui.showNumstatInFilesView 2024-12-08 12:09:47 +01:00
file_loader_test.go Add user config gui.showNumstatInFilesView 2024-12-08 12:09:47 +01:00
file_test.go Support editing multiple files at once using range selection 2024-03-22 08:20:16 +01:00
flow.go Construct arg vector manually rather than parse string 2023-05-23 19:49:19 +10:00
flow_test.go Remove redundant variable dedeclarations 2024-05-19 16:38:21 +10:00
git_command_builder.go Add worktree option to fast forwarding operation 2025-01-02 16:52:24 +11:00
git_command_builder_test.go Add worktree tests for removing/detaching 2023-07-30 18:35:23 +10:00
main_branches.go Re-determine existing main branches if mainBranches config changed 2024-08-18 10:24:52 +02:00
patch.go Fix custom patch operations on added files 2024-06-23 12:40:31 +02:00
rebase.go Fix moving a commit across a branch boundary in a stack 2024-12-23 12:18:48 +01:00
rebase_test.go Remove redundant variable dedeclarations 2024-05-19 16:38:21 +10:00
reflog_commit_loader.go rename sha to hash 8, update some log and comment 2024-04-12 08:33:47 +02:00
reflog_commit_loader_test.go Remove redundant variable dedeclarations 2024-05-19 16:38:21 +10:00
remote.go Allow deleting a range selection of branches 2024-12-01 10:59:54 +01:00
remote_loader.go Implement a sort order menu for remote branches 2023-12-22 16:30:20 +09:00
repo_paths.go Use filepath instead of path for file path operations 2024-08-18 10:24:52 +02:00
repo_paths_test.go Use filepath instead of path for file path operations 2024-08-18 10:24:52 +02:00
stash.go Change direct access to Common.UserConfig to a getter 2024-08-18 10:24:52 +02:00
stash_loader.go chore: use null char as a stash entries divider during loading 2023-12-27 11:21:49 +01:00
stash_loader_test.go Remove redundant variable dedeclarations 2024-05-19 16:38:21 +10:00
stash_test.go use unsigned integer in test and fix CI/linter complaint 2024-11-19 08:21:19 +11:00
status.go Optimize number of early calls to GetRepoPaths 2024-07-06 12:09:48 -07:00
submodule.go Show all submodules recursively 2024-03-07 20:16:28 +01:00
sync.go Fix checking out a different branch while pushing a branch for the first time 2025-01-26 10:22:19 +01:00
sync_test.go Fix checking out a different branch while pushing a branch for the first time 2025-01-26 10:22:19 +01:00
tag.go Remove sync mutex 2023-10-08 18:45:36 +02:00
tag_loader.go Standardise on using lo for slice functions 2023-07-30 18:51:23 +10:00
tag_loader_test.go Remove redundant variable dedeclarations 2024-05-19 16:38:21 +10:00
version.go Add a method GitVersion.IsAtLeast 2024-01-10 09:18:38 +01:00
version_test.go Add a method GitVersion.IsAtLeast 2024-01-10 09:18:38 +01:00
working_tree.go Change direct access to Common.UserConfig to a getter 2024-08-18 10:24:52 +02:00
working_tree_test.go chore: use errors.New to replace fmt.Errorf with no parameters 2025-01-02 17:27:54 +11:00
worktree.go Centralise logic for obtaining repo paths 2023-07-30 18:35:24 +10:00
worktree_loader.go Remove redundant variable dedeclarations 2024-05-19 16:38:21 +10:00
worktree_loader_test.go Remove redundant variable dedeclarations 2024-05-19 16:38:21 +10:00