Windows 10 用户。我最近第一次安装了 git,但遇到了一个奇怪的问题。有人告诉我,JAVA_HOME如果我想在 git 中使用 java,我需要设置环境变量。
我能够JAVA_HOME正确更改命令提示符,但无法在 git bash 中显示相同的更改。输入echo %JAVA_HOME%会在命令提示符中返回正确的路径,但会%JAVA_HOME%在 git bash 中返回。
我进入系统设置并更改系统变量,使其JAVA_HOME指向我的 jdk。我更新了PATH系统变量和环境变量中的变量以指向bin和jdk。我关闭并重新打开 git bash 和命令提示符。我重新启动了机器,甚至重新安装了 git 和 jdk。我将 jdk 从 Java 10.0.2 降到了最新的 java 8 (171)。
这些都没有奏效。我已经浏览了无数的 SO 帖子。我究竟做错了什么?
当我右键单击 Git Bash 快捷方式时,C:/ProgramData/Microsoft/Windows/Start Menu/Programs/Git
我可以设置一个Start in目录。
但是,如果我右键单击任务栏上的 Git Bash 并将其固定,关闭 Git Bash,然后通过任务栏上固定的应用程序重新打开它,则它不尊重我之前配置的启动目录。
我该如何解决?
我正在尝试使用 BFG Repo Cleaner 来替换我的 git 存储库之一中的一些文本。
我已经下载并安装了 jar 文件,但是当我尝试运行 bfg 命令时,出现错误“bfg:找不到命令”。
当我运行 bfg.jar 文件时,它似乎工作正常,但如果我尝试使用命令来运行 bfg.jar 文件和我尝试执行的 bfg 命令,则会收到错误“无法访问 jarfile bfg.jar ”。
我直接复制了 bfg.jar 文件位置和名称以避免拼写错误。我在 git-bash 和 powershell 中尝试过并得到相同的错误。
以下是我在 powershell 和 git-bash 中尝试过的命令,以及我得到的响应:
$ java -jar /c/workspace/bfg-1.13.0.jar
bfg 1.13.0
Usage: bfg [options] [<repo>]
$ bfg --replace-text private.txt repo-name.git
bash: bfg: command not found
$ bfg --rt --replace-text private.txt repo-name.git
bash: bfg: command not found
$ java -jar /c/workspace/bfg-1.13.0.jar --replace-text private.txt repo-name.git
Error: Unable to access jarfile bfg-1.13.0.jar
Run Code Online (Sandbox Code Playgroud)
谁能看到我在这里做错了什么吗?我无法找到任何与此相同的问题,所以我知道这是用户错误,但我找不到我的问题。
谢谢您的帮助!
我尝试过以下键:Ctrl+ D、Ctrl+C和Ctrl+ Z。除非达到 EOF,否则我在 bash 上运行的编程不会停止。
我在 Windows 机器上使用 git bash。除了命令之外,一切正常whereis。终端告诉我找不到命令:
$ whereis grep
bash: whereis: command not found
Run Code Online (Sandbox Code Playgroud)
我已经尝试添加C:\Program Files(x86)\Git\bin到我的路径中。
我该如何解决?
我正在尝试打开 Git Bash,推入和拉入我的 C# 代码。虽然打开 Git BashProcess.Start()不是问题,但我无法将命令写入 Git Bash。
我尝试过在 中包含命令ProcessStartInfo.Arguments以及重定向标准输出。两者都没有起作用。在下面您可以看到我尝试过的不同代码片段。
private void Output()
{
//Try 1
processStartInfo psi = new ProcessStartInfo();
psi.FileName = "C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Git\Git Bash.lnk";
psi.UseShellExecute = false;
psi.RedirectStandardOutput = true;
psi.Argument = "git add *";
Process p = Process.Start(psi);
string strOutput = p.StandardOutput.ReadToEnd();
Console.WriteLine(strOutput);
//Try 2
ProcessStartInfo psi = new ProcessStartInfo(@"C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Git\Git Bash.lnk");
Process.Start(psi);
psi.Arguments = "git add *";
Process.Start(psi);
//Try 3
var escapedArgs = cmd.Replace("\"", "\\\"");
var process = new Process()
{ …Run Code Online (Sandbox Code Playgroud) 我无法在 Windows 上打开 git bash。当我尝试通过右键单击 git local repo 目录来打开 git bash 时,它只是创建文件mintty.exe.stackdump而不是打开 git bash 窗口。但如果我在这里打开 Git GUI,它工作正常。
mintty.exe.stackdump文件包含以下信息
Exception: STATUS_ACCESS_VIOLATION at rip=000FFFFC39F
rax=00000000FFFFC39F rbx=00000000007766B0 rcx=00000000007766BC
rdx=0000000000776828 rsi=0000000000777024 rdi=00000000FFFFC39F
r8 =0000000000000004 r9 =0000000000000000 r10=0000000000000000
r11=0000000000000246 r12=0000000000000001 r13=00000000FFFFC3DC
r14=0000000000000000 r15=0000000000000000
rbp=0000000000000001 rsp=00000000FFFFC188
program=C:\Program Files\Git\usr\bin\mintty.exe, pid 23484, thread main
cs=0033 ds=002B es=002B fs=0053 gs=002B ss=002B
Run Code Online (Sandbox Code Playgroud)
所以请帮我理解这个问题是什么?以及如何解决这个问题?
我使用时出现此错误
git log
Run Code Online (Sandbox Code Playgroud)
fatal:您当前的分支似乎已损坏
我的分支文件损坏了我在记事本中打开了 .git/refs/heads/mybranch 但我只看到了一些????????? 在文件中
我知道我必须找到分支哈希并将其复制到 .git/refs/heads/mybranch 文件中,但我不知道如何找到该哈希
我读了这个主题 git 中的分支已损坏,致命:您当前的分支似乎已损坏
我发现 Git Bash 命令被 Windows 10 勒索软件保护阻止。仅当我尝试在 Windows 文件夹(例如文档)中执行它们时,才会发生这种情况。我已经用mkdir和对此进行了测试touch对此进行了测试,但它可能涉及更多命令。
我收到的错误如下所示:
\n\nDESKTOP-FBRH45G MINGW64 ~/Documents/Git_Projects\n$ mkdir example_folder\nmkdir: cannot create directory \xe2\x80\x98example_folder\xe2\x80\x99: No such file or directory\nRun Code Online (Sandbox Code Playgroud)\n\n当打开受控文件夹访问保护时会发生这种情况。
\n\n\n\n当保护关闭时,执行命令:
\n\nDESKTOP-FBRH45G MINGW64 ~/Documents/Git_Projects\n$ mkdir example_folder\n\nDESKTOP-FBRH45G MINGW64 ~/Documents/Git_Projects\n$ ls\nexample_folder/\nRun Code Online (Sandbox Code Playgroud)\n\n如果我使用管理权限运行 Git Bash 没有任何区别。我尝试将 Git 添加到允许的应用程序设置中,但也没有任何区别:
\n\n\n\n目前唯一的解决方法是禁用保护或将 Git 项目移动到另一个文件夹;但是,我想知道是否可以做任何事情来使这些命令在我的文档文件夹中工作,因为这是我想要存储项目的地方。
\n\n我的 git 当前版本是:
\n\nDESKTOP-FBRH45G MINGW64 ~\n$ git --version\ngit version 2.23.0.windows.1\nRun Code Online (Sandbox Code Playgroud)\n 当我在 git bash 中运行一些代码时,我发现路径自动更改了。
$ python src/loon/skeleton.py upload ~/test.R /tmp -v
[2019-11-03 10:41:07] INFO:__main__:Starting loon...
[2019-11-03 10:41:07] INFO:__main__:Upload command is detected.
=> Starting upload...
[2019-11-03 10:41:07] INFO:__main__:Running scp -pr -P 22 C:/Users/Administrator/test.R wangshx@10.15.22.110:C:/Users/ADMINI~1/AppData/Local/Temp/
scp: C:/Users/ADMINI~1/AppData/Local/Temp/: No such file or directory
[2019-11-03 10:41:08] INFO:__main__:Status code: 1
Error: an error occurred, please check the info!
Run Code Online (Sandbox Code Playgroud)
/tmp这是远程主机上的路径。可以看到/tmp已经改为C:/Users/ADMINI~1/AppData/Local/Temp/. 我无法通过 add'或 来阻止它"。
$ python src/loon/skeleton.py upload ~/test.R '/tmp' -v
[2019-11-03 10:43:17] INFO:__main__:Starting loon...
[2019-11-03 10:43:17] INFO:__main__:Upload …Run Code Online (Sandbox Code Playgroud) git-bash ×10
git ×5
windows ×2
windows-10 ×2
c# ×1
eof ×1
git-branch ×1
java ×1
java-home ×1
path ×1
powershell ×1
shell ×1
stdin ×1
terminal ×1