我一直在 Mac 上使用 Sourcetree 来管理我的存储库。我最近找到了一台 Ubuntu 机器来开发,并且发现 Sourcetree 不适用于 Ubuntu,我发现 Gitkraken 作为一个潜在的替代方案。
我的问题是,有什么方法可以在 Gitkraken 中为推送和拉取设置不同的远程存储库?(例如,使用顶部菜单栏上的按钮从上游/开发推到原点/开发拉)。如果这是不可能的,有没有办法跟踪与您正在推/拉的远程分支不同的远程分支?
例如,设置 Sourcetree 以便 local/develop 跟踪远程分支 upstream/develop,同时推送到远程分支 origin/develop。因此,如果人们对原始存储库进行更改,它将显示在我的 Sourcetree 中,我将知道从上游/开发拉到本地/开发。如果我进行了任何更改,我可以将我的 fork 推送到 origin/develop 并在那里创建一个拉取请求,以便在更改获得批准后合并到上游/develop。
另外,在 Gitkraken 中,如果我右键单击上游/开发,有一个选项merge upstream/develop into develop应该采用上游/开发中的最新更改并将其合并到我的本地副本中,对吗?(如果我突然将本地开发合并到上游,上帝会帮助我)。
我正在尝试使用运行 eslint 的提交钩子。to hook 用于GIT_DIR查找包本地 eslint 和相关的 eslint 配置。像这样:
ESLINT_PATH="${GIT_DIR}/../node_modules/.bin/eslint"
Run Code Online (Sandbox Code Playgroud)
从命令行,这工作正常。GIT_DIR设置好了,每个人都很高兴。但是在 GitKraken 中,GIT_DIR缺少。事实上,没有设置 git 环境变量。我跑env在钩子里,看着输出。
这是 GitKraken 的正常行为吗?是否有一些我遗漏的隐藏配置?
我可以修改脚本,所以如果有更“正确”的方法来做到这一点,我全神贯注。
我已经安装了Beyond Compare并希望将它用作Gitkraken 中的合并和差异工具。
当我选择任何修改过的文件时,它仍然使用默认的 Gitkraken diff 视图......我知道它在设置中说合并工具,但也必须有一种方法来指定一个 diff 工具,对吧?
我使用 GitKraken 来满足我的版本控制需求,并且在很大程度上我喜欢它。我时不时会遇到一些我可以做 UI 并且必须使用命令行的事情。
我现在正在尝试做的一件事是将一些文件模式添加到我的 git repo 的.git/info/exclude文件中(注意:这不是 git ignore;我只是想排除我本地 repo 中的更改,因为文件所讨论的问题与需要提交的内容无关。)
GitKraken 似乎忽略了我对此文件所做的更改,或者我只是没有正确执行此操作。有谁知道 GitKraken 对这个文件做了什么?我似乎无法在他们的网站上找到任何关于它的文档。
我使用 Visual Studio 来开发我的代码。我的文件使用带有 BOM 的 UTF-8 编码。
由于 VS 不允许暂存文件,我使用 GitKraken 来这样做。
但是当我使用 GitKraken 暂存一个文件时,文件的编码从带有 BOM 的 UTF-8 更改为西欧 (Windows)。
如何避免 GitKraken 更改我的文件编码?
git-crypt在使用 git CLI 时工作得非常好。我已经为 git-crypt ( .gitattributes)进行了适当的设置。创建/编辑我想要加密的文件后,我执行:
git add .
Run Code Online (Sandbox Code Playgroud)
文件已经上演,现在我执行:
git commit -m "Commit encrypted file"
git push
Run Code Online (Sandbox Code Playgroud)
但是当我使用 GitKraken 并暂存文件时,它似乎没有复制git add .CLI。
有没有人成功使用过 GitKraken 和 git-crypt?
到目前为止,我已经从命令行运行程序和 GitHub Desktop 使用了 Git。
我尝试使用 GitKraken,但它有一个很大的问题。我有一个存储库,它有真正的嵌套文件夹,超过了 256 个长度。这个问题很容易用 Git 和 GitHub Desktop 解决,因为你可以.gitconfig在核心部分 - longpaths = true.
问题是我找不到.gitconfigGitKraken 正在使用的文件,因此我无法禁用长路径并通过 GitKraken 克隆我的存储库。
我有两个问题: