我对Git很陌生,但我一直在使用GitBash进行提交,现在推动和拉动一两周.一切都工作正常,但一两天前我每次尝试与远程存储库交互时都开始出错.
致命:无法访问'....':连接到github.com失败:443; 没错
我做了一些谷歌搜索,遇到类似的StackOverflow帖子和文章.从那以后,我尝试了很多东西,包括测试跨不同端口的SSH连接(22和443).看起来端口443(用于HTTPS连接)被阻止,而端口22似乎是打开的.

从我对此的理解,它看起来像我可能需要更改Git使用的端口从443到22.我已经尝试更改~/.git/config文件,我已经尝试了git remote set-url命令尝试这样做,但没有喜悦.
任何有关原始错误或如何更改我的Git端口的信息将不胜感激.
在整个网站上有一些类似的问题,但他们都没有给我我正在寻找的答案.
我想要做的是在具有WAMP的Windows机器上通过Git Bash安装Composer.
我正在使用以下命令:
curl -s http://getcomposer.org/installer | php
Run Code Online (Sandbox Code Playgroud)
这不起作用,因为"php"无法识别.所以我调查了问题,我意识到Windows不知道'php'是什么,我需要设置一个环境变量.
我进入环境变量对话框并输入'php'作为变量和C:\wamp\bin\php\php5.3.8值.它是否正确?我应该针对特定文件还是整个目录?
执行此操作后,我再次尝试该命令,但它失败了,因为它仍然无法识别'php'.我也尝试直接将文件路径放入命令,但这也不起作用.
所以我很好奇我做错了什么.我的路径不正确吗?
我需要排除dist/合并错误的文件夹,我不在乎它是否theirs,ours或其他策略,但我需要将其保留在修订控件中,因为这是部署到Heroku的方法..gitattributes脚本似乎是要走的路.但我似乎无法做到这一点.
我读了这个规范的答案和这个类似的答案,但无法找出我做错了什么.
我的.gitattributes配置:
* text=auto
dist/ merge=keepMine
Run Code Online (Sandbox Code Playgroud)
我的相关部分 .git/config:
[merge "keepMine"]
name = always keep mine dist during merge
driver = keepMine.sh %O %A %B
Run Code Online (Sandbox Code Playgroud)
和keepMine.sh(在我的项目根文件夹中,没有文件夹不在路径中,但复制到路径中的文件夹没有帮助,并且不是一个好的解决方案,因为脚本应该是修订控制的一部分所以所有开发人员都会得到它):
# copied as is from the SO answer
# I want to keep MY version when there is a conflict
# Nothing to do: %A (the second parameter) already contains my version
# Just indicate the merge …Run Code Online (Sandbox Code Playgroud) 我试图在Windows中的python virtualenv中运行交互式shell,在git-bash上,但它没有运行.奇怪的是,它似乎没有做任何事情,只是光标在下一行闪烁,没有输出.
$ python manage.py shell
|
Run Code Online (Sandbox Code Playgroud)
但是,我能够运行诸如 - migrate,makemigrations,sqlmigrate之类的命令.命令发生问题 - shell,dbshell,runserver.
这似乎是一些与git-bash相关的问题,因为我能够从命令行运行shell.我正在使用PortableGit-2.4.3.1-2nd-release-candidate-64-bit.7z.exeWindows.
我正在尝试使用批处理文件自动化我的工作环境.我遇到了无法从命令行启动MingW64控制台的问题.
start "" "%ProgramFiles%\Git\bin\sh.exe" --login工作正常,但似乎打开一个不同于我正在寻找的shell窗口.我会用图片解释一下.
它打开的是一个集成了bash的默认cmd样式窗口.此窗口甚至无法调整大小

我试图使用该命令,start "" "%ProgramFiles%\Git\git-bash.exe" --login -i -c /bin/bash但似乎在打开后快速关闭shell.如果我从资源管理器执行相同的文件,shell不会自动关闭.
这是我的完整批处理文件以供参考
@echo on
REM start PHP and MYSQL
start "" mysql_server\UniServerZ\UniController.exe start_both
REM Open PhpMyAdmin
start "" http://localhost/us_opt1/
REM Open Folders
start "" %SystemRoot%\explorer.exe "E:\work\"
REM Open Git Bash Instance
:: in order to open the shell in that path
cd E:\work\
:: start "" "%ProgramFiles%\Git\bin\sh.exe" --login
start "" "%ProgramFiles%\Git\git-bash.exe" --login -i -c /bin/bash
REM start sublime text
start "" "E:\Sublime Text Build …Run Code Online (Sandbox Code Playgroud) 我尝试telnet在我的笔记本电脑的git bash中使用命令,但它显示错误telnet.我的笔记本电脑系统是Windows 10.任何想法都表示赞赏.
我在Windows 上安装了Java9(Oracle网站上当前可用的版本)(Windows 10 x64 Professional,也是最新的,作为vmware虚拟机运行 - > VMware Workstation 12).我添加jdk\bin到用户路径并尝试使用Git Bash执行命令,但即使JShell启动,它也不会在按下后执行任何命令Enter,它只是坐在那里而不做任何事情.
有趣的是,它与Windows的默认命令行完美的作品CMD或Powershell.如果我没记错,Git Bash是基于Cygwin的.这可能是什么原因?
此外,它没有直接连接JShell,但我在一台不同的机器上有一些类似的问题,有一些命令行工具,如JHipster(适用于CMD但不适用于GitBash).
必要的截图: -
编辑:使用jshell -v并没有什么区别.此外,使用任何REPL帮助程序命令,/help或/help intro使shell也停止.
我需要将修改后的新 java 代码推送到 github 中的旧 git 存储库,但我的电脑中没有旧代码。怎么做?
我之前在我的github账户之前推送过一段代码。现在我的电脑里没有那个旧代码了。如何将项目拉入我的电脑并在进行更改后再次推送到同一存储库?
我在github上没有太多经验,所以请帮助我提高github上的技能。
Git 签出新分支会出现以下错误
无法为 HEAD 写入 symref:权限被拒绝无法更新 HEAD
但如果我删除存储库并创建一个新存储库,它就会起作用。当我重新启动笔记本电脑时,我猜它会停止工作。
问题出在 Windows 10 中。
git-bash ×10
git ×4
windows ×4
github ×2
ansi-colors ×1
batch-file ×1
color-codes ×1
command-line ×1
conemu ×1
django ×1
git-merge ×1
git-push ×1
gitlab ×1
java ×1
java-9 ×1
jshell ×1
php ×1
python ×1
ssh ×1
telnet ×1