问题标签 [git-bash]

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.

0 投票
1 回答
92 浏览

git - Git Bash 从 Github 获取特定构建版本的完整存储库

获取特定构建版本的整个 repo 的语法和命令是什么?

我正在使用适用于 Windows 的 Git Bash,并正在尝试获取 popcorn-js 存储库的版本 [#1290]。

您可以在此处获取最新的克隆:

但我想获得以前的版本。

我努力了:

但我找不到语法。

0 投票
1 回答
141 浏览

git - 使用错误的推送 URL 错误地将一个仓库推送到另一个仓库;如何在不合并的情况下删除推送的分支/回购?

问题:有没有办法删除远程分支而不合并它们?

背景:我们让第三方为我们做一些工作,他们使用 GitHub,我们也这样做

所以我从那里拉出回购并推到我们的。不幸的是,我推错了仓库。所以现在我们有一个项目,其中包含另一个项目。

我们真的不想合并所有更改并删除它们并保留历史记录。我只想删除这个分支(推)。

我已经尝试过 -git push origin --delete branchName (当然,这只有在合并时才有效。)

看起来删除非合并分支的唯一方法是使用 -D -git branch -D branchname (但这仅适用于本地仓库)

有没有办法删除分支而不将它们合并到远程存储库或任何其他方式来清理这个混乱?(一个回购推送到另一个没有合并)

0 投票
1 回答
240 浏览

git - 有没有办法强制提交者在 Git Bash 中输入他们的用户名

我有一个代码库,一些开发人员通过 RDP 工作并使用远程计算机上的 IDE。我想知道是否有办法强制他们在提交更改时输入自己的名字。现在 Git 默认使用我的名字,这非常烦人,因为我不是做出更改的人。

此外,当将某些内容推送到 GitHub 时,它确实会要求输入用户名/密码,但我似乎无法在提交列表中找到该用户信息的任何指示。

**编辑**仅供参考**

我的初衷是在每次运行提交命令时强制用户在共享帐户下登录(不可避免)输入他们的user.name和凭据。user.email为了实现这一点,我尝试使用 Windows 的登录脚本,每次新用户登录时,它基本上都会清除和设置这些值;

但是我无法通过它的主要用例 RDP 让它始终如一地工作。

这导致我尝试使用pre-commitGit 的钩子,我基本上使用了为 Bash 修改的相同脚本。这也不起作用,因为 Git 在调用钩子之前分配了“作者”。

换句话说,如果用户配置是name = jim并且email = bob@test.comGit 日志将作者作为jim<bob@test.com>,那么下一次提交将具有输入的信息。

0 投票
2 回答
4681 浏览

windows - 在 Vim for Windows 上设置 Cygwin shell 路径

我正在尝试在 Windows 上设置 Vim,使用 Git bash (Cygwin) 作为 shell 环境。我收到一个关于临时文件的错误,我 99% 确信这与无法加载 shell 的事实有关(即“!”命令不起作用)。

在我的_vimrc文件中,我尝试将shell选项设置为各种东西,但都不起作用。我的 cygwin/git bash 命令路径是C:\Program Files\Git\bin\sh.exe,空间似乎引起了问题。我尝试了以下方法,但没有成功:

有谁知道我如何设置包含空格的 shell 路径?

0 投票
4 回答
4364 浏览

git - git 从整个历史记录中删除所有已删除的文件

我想知道是否有人有更有效、更智能的方法来做到这一点。循环结构要求通过读取每个提交从每个提交中删除每个已删除的文件。对于许多提交,这需要很长时间。

0 投票
1 回答
1864 浏览

git - 使用接收后挂钩创建 zip

我已经玩了一段时间的钩子了,但我似乎无法让post-receive钩子按照我需要的方式工作。

在将更改推送到存储库后,我正在尝试post-receive创建一个 zip 文件夹并将其放置在 git 存储库文件夹之外的某个位置。

0 投票
1 回答
728 浏览

bash - 理解 PS1 bash 提示符中奇怪的字符语法

这是我的 bash 提示符: 重击

这是PS1生成的

现在,这是我理解的东西:

  • $debian_chroot- 用于su&sudo
  • u- 用户
  • h- 主持人
  • 其余字符喜欢\033用于颜色。

我不明白的是什么在AFTER railsBEFORE (master)生成空间?那是什么角色?我想删除那个空间。

0 投票
3 回答
5596 浏览

bash - “Git Bash here”不保留会话之间的 bash 历史记录

我在 Windows 7 上运行 Git-1.8.0-preview20121022 并且安装是使用“仅 Git Bash”(对 Windows cmd 的干扰最小)。

当我从开始菜单快捷方式打开 Git Bash 时,历史记录一切正常。

但是,当Git Bash here上下文菜单(git-cheetahshell 扩展之一或更简单的注册表)是启动会话的内容时,来自该会话的命令不会保存到.bash_history.

怎么能弄清楚为什么会这样?或者更好的是,有人知道如何解决这个问题吗?

0 投票
2 回答
288 浏览

batch-file - 如何将字符 q 从批处理文件发送到 GIT

我需要从我正在使用的脚本中显示我的存储库的最后一次提交:

问题来了:

  1. 由于想要使用这种格式打印,一行打印了整个提交哈希。

    git log -1 --pretty=format:%h\ %s\ %an

    但是批处理文件中的部分代码由于%符号而被识别为变量。

  2. 为了完成显示日志,有必要发送字符q,当直接输入到 git bash 时效果很好,但是当从批处理文件发送时,我得到“'q' 不被识别为内部或外部命令”。

0 投票
1 回答
1182 浏览

windows-7 - git bash shell 找不到 /etc

在我的新 Win7 笔记本电脑上安装 MSysGit 后,我​​将用户目录 (C:\Users) 移动到我的 D: 磁盘并创建了一个从 C:\Users 到 D:\Users 的硬链接。这似乎适用于大多数程序,但是 git bash shell 似乎无法再找到位于

一个类似的问题是shell 可以再找到写入\Users\.bash_history 的.bash_history。

我可以从 shell 中读取 bash_profile

但这很讨厌。关于如何让 shell 找到 /etc 目录的任何建议?或者任何其他可以读取 bash_profile 的方法?(很抱歉在 / 和 之间切换。我试图保持直接使用是 Windows 与 *nix shell)

奇怪的是,ssh 似乎是 find \users\.ssh\known_hosts 因为它没有抱怨找到存储在那里的密钥。