问题标签 [vim-fugitive]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
git - Neovim 插件 Fugitive 没有使用 ssh 密钥代理,所以我不能 Gpush/Git 推送
我在 Windows 上使用 Neovim,以及 vim-fugitive 插件。该插件有一个推送提交的命令,Gpush。我收到一条错误消息,提示“权限被拒绝(公钥)致命:无法从远程存储库中读取。我正在使用 ssh 密钥,在控制台中一切正常,但在插件中却没有。我找不到其他有同样问题的人在线的。
git - Git报告合并冲突,但大块头是相同的
我正在尝试通过实时项目学习 Fugitive,特别是解决合并冲突,因为我发现手动执行此操作非常乏味。我不知道这是否是一个有效的问题,因为我无法在我正在使用的 repo 之外重现效果,而且我以前从未见过它。
无论如何,Git 正在报告合并冲突。但是,当我去编辑包含冲突的文件时,我滚动到 Git 添加的用于标记冲突的注释(顺便说一下,这些注释是什么?)它们是相同的。像这样的东西:
它们完全相同。一个或另一个中没有异常的空白,没有看起来相同的奇怪 Unicode 字符,等等。字节对字节相同。因此,Fugitive/vimdiff 不起作用:它检测到的唯一区别是那些带内注释,因此执行:diffget
或:diffpull
只是删除注释。因为注释被适当地分开,它们被分开处理,所以必须单独做每一个,你最终会得到这个明显不正确的结果:
起初我以为注释被意外提交到其中一个分支中——这是我能想到的唯一解释——但是不,它们无处可见。每个分支中的文件并不完全相同,但它们没有冲突的差异。
很明显,Git (2.28.0) 错误地标记了冲突,而 Vim/Fugitive 工作正常。这里出了什么问题?
vim - “未知功能:37_repo_dir" 在 vim 中打开新文件时
我最近更新了 oh-my-zsh、vim 并运行 rcup 来更新 dotfiles 和 vim 插件。
在 vim 中打开新文件时出现错误,其中部分包含:
这似乎与fugitive
我已安装的插件有关,因为它上面提到了错误。
vim - 如何将 vim-fugitive 与 git 裸存储库一起使用?
环境
设置
我使用git 裸存储库来对我的配置文件进行版本控制。我可以使用与使用普通git存储库相同的命令,只需包含一些标志:
代替
用法
我将vim-fugitive与普通git存储库一起使用,主要是为了进行重大更改,并通过部分暂存(仅一组离散的大块/更改)并将它们单独提交来将其添加到许多不同的提交中。我将:Gdiff
其用于我可以使用的漂亮且高效的界面。
欲望
我想用我的 config git 裸存储库来做到这一点。
我尝试了什么:
将存储库重命名为
.cfg.git
. 这并没有带来任何改变。表明这应该有效的问题我试图改变git-fugitive
b:git_dir
的内部变量:
- 将工作目录更改为 git 目录,以便逃犯识别它是一个 git repo:
如果我知道怎么做,什么值得尝试:
- 我认为可能有一种方法可以使用该
git submodule
命令将裸仓库放入范围。问题在于将git 存储库的根放在哪里......我基于这种可能性的问题
问题
有没有办法将git 裸存储库与git-fugitive一起使用?
(或任何其他可以解决我的用例的建议)
git - 如何在终端中使用 git 或在 Vim 中使用 Fugitive 列出我的所有 Github 存储库,公共和私有?
我的 Github 帐户上有一些存储库,我正在尝试将所有这些存储库(私有和公共)的名称列表通过管道传输到一些脚本以自动执行一些任务。
我做了什么-
- 阅读大量关于此的 QnA,但大多数答案都围绕着
git remote
或我发现与问题无关的类似命令。我仍然检查了它的例子来确定这一点。很少有人回答如何列出本地存储的存储库,但这意味着克隆它们中的每一个。我相信这两个不会使这是一个重复的问题。 - 浏览了 git 文档,但似乎没有任何内容允许此操作
- 考虑克隆整个帐户(大约 7gb ..)请不要让我这样做
有任何想法吗?
git - 在不重新创建提交的情况下调整先前的提交
我曾经使用gitx来暂存更改以进行提交,但我已经切换到纯粹的终端工作流程 + Fugitive.vim。我真正怀念 gitx 的一个特性是能够在之前的提交中进行调整。例如,如果在之前的提交中添加了某个部分,但不应该添加,那么 gitx 可以很容易地拉出该部分并修改之前的提交。
我目前进行此类更改的工作流程是:
git show
- 复制提交信息
git reset --soft HEAD^
- 使用 Fugitive 或
git add -i
做任何我想做的改变 git commit
- 粘贴之前复制的提交信息
- 确认
以前方便的两步过程现在变得非常麻烦。还有其他我想念的方法吗?
git commit --amend -CHEAD --interactive
对我来说似乎很有希望,但它似乎根本不起作用。
git - 在 vim-fugitive 中显示由提交更改的文件的交互式列表
在处理提交时,我经常使用逃犯状态窗口。这是查看我所做更改的一种简单且交互式的方式,我可以打开我进行更改的任何文件,例如对它们进行比较。但是,在我提交之后,我找不到同样好的方法来浏览在特定提交或提交间隔更改的文件。理想情况下,我想要的是逃犯状态窗口之类的东西,但最重要的功能是文件列表,我可以在其中单击文件并将其打开。
我尝试过的事情
- 打开提交对象。这有两个问题:
- 它显示了文件之间的差异,因此导航到要打开的文件需要一段时间。
- 如果我单击一个文件,它会在当前窗口中打开,所以在文件之间快速跳转是行不通的。
Gclog --name-only
获取我的文件列表,但它不是交互式的。
git - 在 Neovim 中检索 git_main_branch
所以我最近对 Neovim/Spacevim 非常熟悉,这真是太棒了!
我正在设置一些个人键绑定和命令以及你有什么,目前正在研究 Git 的东西。
来自使用 VSCode 和 iTerm2,当想要从任何分支切换到主分支或master
主分支时,我有一个别名,如下所示:main
我可以gcom
在终端输入,它会自动切换到主分支。不幸的是,在 Neovim 中,git_main_branch
这不是一回事,所以我试图找出一个等价物,我可以在其中执行类似输入:Gcom
Neovim 命令提示符的操作,然后切换到主分支。
init.vim
我试图在我的文件中设置这样的功能(我已经coc
安装了所有相应的 Git 插件,包括fugitive
):
然后设置一个命令
但这并不能解决问题。有谁知道我如何用 Neovim 完成这个任务?谢谢!