一个简单的问题.我使用msysgit和openSSH作为git客户端.我不想使用其他ssh客户端,如putty.从GIT Bash我已成功连接到我的服务器与ssh -p XXXX到我的服务器.
不幸的是,当我尝试做类似的事情:
git clone git@SERVER:reponame.git
Run Code Online (Sandbox Code Playgroud)
从Git Bash我得到:
ssh: connect to host SERVER port 22 failed.
Run Code Online (Sandbox Code Playgroud)
如何使用openssh在不同的端口运行msysgit尝试打开的ssh连接?
我知道在linux中这样的东西会出现在/ etc/ssh/ssh_config文件中,但在这种情况下我该如何做呢?提前致谢.
在Windows上使用msysgit,每当我git diff在具有子模块或多个子模块的存储库上执行操作时,命令提示符(以及PowerShell)都会崩溃.
这是一个已知但是有修复/解决方法吗?我可以从diff中排除子模块吗?
也:
PS Z:\www\gittest> git --version
git version 1.7.6.msysgit.0
Run Code Online (Sandbox Code Playgroud)
编辑:这也在msysgit谷歌组报道.
我需要帮助获取git扩展以使用msysgit运行.我对扩展git-tfs和git-fetchall运气不好,在这两种情况下它都是同样的问题.插件需要放置一个文件放在git可以找到它的位置(git-tfs.exe和git-fetchall.sh).我理解这意味着文件需要位于'PATH'环境变量中的目录中.在这两种情况下,我都陷入了困境:
$ git-diffall
bash: git-diffall: command not found
Run Code Online (Sandbox Code Playgroud)
要么:
$ git-tfs
bash: git-tfs: command not found
Run Code Online (Sandbox Code Playgroud)
当我从常规命令shell运行echo%PATH%时,它显示我的路径变量包括git-diffall和git-tfs所在的目录.我怎么调试这个,或者我错过了什么?在msysgit中有没有办法验证命令搜索路径是否符合预期?
在git中合并时如何强制"我的更改"?有人把所有bin目录放在git中,现在我有一个可怕的合并冲突:(
现在它说如下:
当你解决了这个问题后,运行"git rebase --continue".如果您希望跳过此补丁,请运行"git rebase --skip".要恢复原始分支并停止重新运行,请运行"git rebase --abort".
我不想合并,我只是想使用我的更改删除所有这些文件.
编辑:大多数文件已成功合并,通过自动合并或因为没有冲突.但是仍然有很多像下面这样的存在.
警告:无法合并二进制文件:src/reports/obj/Debug/TempPE/GroupMailDS.Designer.cs.dll(HEAD与添加的gitignore)
如何避免在Git GUI中扫描不必要的/临时文件?例如obj,pdb文件等......?
我在Windows上克隆了一个git存储库,注意到行结尾设置为UNIX样式(LF).
为了解决这个问题,我将存储库的autocrlf值更改为true(core.autocrlf=true).
但是,我在磁盘上的所有签出文件仍然具有UNIX样式(LF)行返回.我该如何解决这些问题?
我有两个回购,我希望有不同的信息与它相关联.
例如,一个仓库被命名site,我想要
user.name = admin
user.email = admin@mysite.com
Run Code Online (Sandbox Code Playgroud)
以及我想要的所有其他回购
user.name = qwertymk
user.email = qwertymk@blah.com
Run Code Online (Sandbox Code Playgroud)
有没有办法在git中切换配置文件或类似的东西?
我在窗户上,所以我正在使用msysgit.(linux/mac尽管可以为其他人提供唯一的解决方案)
编辑:
我现在意识到我可以写一个批处理脚本来交换,c:\users\<me>\.gitconfig但这似乎更像是一个黑客.
我正在使用SVN进行源代码管理,由托管公司托管.我正在考虑将其迁移到Git并尝试迁移到本地Git实例来测试迁移水域.我已经安装了Git Extensions v2.31并安装了我在安装过程中提供的msysgit版本.
安装完成后,我点击"克隆SVN存储库"选项并输入SVN仓库位置和其他必要的详细信息.单击"克隆"按钮.然后我在Process输出窗口中看到以下消息(我已经desensitised一些信息):
c:\Program Files (x86)\Git\bin\git.exe svn clone "https://foobar.domain.com/folder/name.svn" "c:/git/"
Initialized empty Git repository in c:/git/.git/
Error validating server certificate for 'https://foobar.domain.com:443':
- The certificate is not issued by a trusted authority. Use the
fingerprint to validate the certificate manually!
Certificate information:
- Hostname: *.domain.com
- Valid: from Mar 18 13:23:06 2012 GMT until Apr 20 16:16:05 2013 GMT
- Issuer: GeoTrust, Inc., US
- Fingerprint: a2:36:f0:ae:8c:c7:a3:f2:be:98:b3:0f:2e:f8:3a:07:9a:94:90:81
Run Code Online (Sandbox Code Playgroud)
此时没有其他任何内容显示,进度条仍然显示进度但没有真正发生.问题似乎与此处报道的类似:Windows上的Git和SVN
但是,我甚至没有选择拒绝/接受等?有人有任何想法吗?
TIA
我想自动化git bisect(也可在指令正式的Linux内核的Git documenation用于git bisect建立一个.NET项目含)的MSBuild它与,并运行单元测试nunit-console.exe。但是,这些工具是为在 Windows 开发环境中使用而构建的,我在让它们在 msysgit 的 Bash 环境中工作时遇到了各种问题,总结如下:
MSBuild.exe,也没有nunit-console.exe(路径问题)。MSBuild.exe并nunit-console.exe使用Windows风格的命令行选项标志,即他们开始用斜线盼着如MSBuild.exe /M。在 Bash 中,正斜杠会导致错误,因为 Unix/Linux/*nix 系统使用正斜杠来表示目录路径。这是git bisect我一直在使用的命令:
$ git bisect start <bad commit> <good commit>
$ git bisect run auto-build-run-tests.sh
Run Code Online (Sandbox Code Playgroud)
这些是以下内容auto-build-run-tests.sh:
$ git bisect start <bad commit> <good commit>
$ git bisect run auto-build-run-tests.sh
Run Code Online (Sandbox Code Playgroud) 我注意到我在运行时默默地丢失了提交git rebase --interactive,因此我在一个简单的仓库中重新创建了这个问题进行测试.
我有四个提交,我想重新排序其中两个.这是我的开始提交:
55d4ca6 1 <-- origin/master
d70d325 2
b613c5b 3
2bd1177 4 <-- master
Run Code Online (Sandbox Code Playgroud)
每次提交都独立于其他提交; 他们都操纵不同的文件.我想重新排序提交以切换提交2和3.我将要执行此操作git rebase --interactive origin/master.正如预期的那样,运行该命令会按顺序在vim窗口中提交我的提交:
pick d70d325 2
pick b613c5b 3
pick 2bd1177 4
Run Code Online (Sandbox Code Playgroud)
我要交换提交2和3,所以我在vim中对它们进行重新排序,如下所示:
pick b613c5b 3
pick d70d325 2
pick 2bd1177 4
Run Code Online (Sandbox Code Playgroud)
我希望交换这两个提交,如下所示:
55d4ca6 1
bf330a8 3
5c6f9af 2
7cb8db1 4
Run Code Online (Sandbox Code Playgroud)
实际上,我的一个提交已经完全消失了,我的回购留下了这个:
55d4ca6 1
7de7fb0 3
10fc3a7 4
Run Code Online (Sandbox Code Playgroud)
我使用rebase --interactive不正确吗?或者这是Git中的错误?
我正在使用最新的Window Git版本(1.9.5.msysgit.0).在过去的几个月里,我已经注意到了这个问题.
编辑1:用文本替换vim和gitk图像.如果你想看到我所看到的确切内容,请查看原始问题修订版.