如何从 Windows 上的 Git 存储库路径的命令行启动 GitKraken?

How can I start GitKraken from the command line with a Git repository path on Windows?

我想创建一堆快捷方式来打开 Git 存储库

GitKraken 是这样开始的:

C:\Users\<username>\AppData\Local\gitkraken\Update.exe --processStart "gitkraken.exe"

我试着像这样添加路径,但没有任何反应:

C:\Users\<username>\AppData\Local\gitkraken\Update.exe --processStart "gitkraken.exe  \"C:\<path to repo with spaces>\MyRepo1\""
C:\Users\<username>\AppData\Local\gitkraken\Update.exe --processStart "gitkraken.exe  \"C:\<path to repo with spaces>\MyRepo2\""
C:\Users\<username>\AppData\Local\gitkraken\Update.exe --processStart "gitkraken.exe  \"C:\<path to repo with spaces>\MyRepo3\""

可能存在多个问题:

  1. GitKraken 可能不支持路径作为参数。当我用谷歌搜索 "gitkraken from command line with repository path as parameter"
  2. 时没有找到任何文档
  3. 引号中的引号可能有误,但我认为是正确的:Command line passing quotes within quotes
  4. 命令行语法可能不同,但如上所述,我没有找到任何文档。我尝试了“-p”,因为我在谷歌搜索时看到了类似的东西,但它也不起作用 C:\Users\<username>\AppData\Local\gitkraken\Update.exe --processStart "gitkraken.exe -p \"C:\<path to repo with spaces>\MyRepo1\""

GitKraken 使用 Squirrel.Windows 项目为其 Windows 安装进行安装和更新管理。因此,当您单击标记为 "GitKraken" 的快捷方式时 运行ning update.exe 是 运行ning 检查和下载更新的 Squirrel.Windows 进程,然后 运行是最新版本的 GitKraken。检查完成后,它会启动 GitKraken.exe 并启动程序。

要解决您的问题,您需要通过 Squirrel 调用将 CLI 选项传递到 gitkraken.exe。您是正确的,gitkraken.exe 接受 -p | --path 选项让回购在启动时打开(例如 gitkraken.exe -p "\path\to\repo")。如果您直接从应用程序文件夹 运行 它,您可以在 gitkraken.exe --help 看到可用的选项。幸运的是,有几个尚未记录的选项可以为您传递(参考 here),因此您的自定义快捷方式现在可以是:

..\Update.exe --processStart "gitkraken.exe" --process-start-args="--path \"d:\path with spaces\to\repo\""

回复:通过 GitKraken 可执行更新的持久性 - OP 在 GitKraken 更新到 v4.2 后在评论中确认他们设置的快捷方式继续工作!

这就是我在 Ubuntu 桌面

中工作的方式

定义它

gkk() { # gkk aka gitkraken
    repo_d=
    if [ -z $repo_d   ]; then repo_d=`pwd`; fi
    if [ ! -d $repo_d ]; then echo "Invalid :repo_d at $repo_d"; exit 1; fi
        /usr/bin/gitkraken -p $repo_d &
}

使用它

cd /path/to/your/repo
gkk

注意,在 2nd repo 上再次调用该命令将不起作用!

我能想到的解决方法是关闭并重新打开 GitKraken 应用程序