Articles of git

使用git在windows中推送到code.google.com

相关问题: git和Git 不接受netrc – 如何在Windows上使用.netrc文件保存用户和密码 我正在尝试将更改推送到code.google.com git存储库。 我正在使用Git扩展。 我的HOMEvariables是在Windows和Git Bash中设置的。 C:\> echo %HOME% C:\Users\Username $ echo $HOME /c/Users/Username 我在%HOME%中添加了一个名为_netrc的文件 machine code.google.com login username@gmail.com password GOOGLEGENERATED 显然用户名被我的用户名所取代,GOOGLEGENERATED是谷歌生成的密码。 当试图推,我得到这个错误消息: C:\ Program Files \ Git \ bin \ git.exe push -u –recurse-submodules =检查“origin”master:master完成致命错误:远程错误:无效的用户名/密码。 您可能需要使用您生成的googlecode.com密码; 请参阅https://code.google.com/hosting/settings 有关的问题表明,一切都设置正确,但它仍然无法正常工作。 有任何想法吗?

Git diff在path下用下划线文件失败

我正在运行Windows 7,我有最新版本的git(2.7.2.windows.1)。 我以前使用Windows PowerShell作为我的git操作terminal,没有问题。 最近,我决定切换到Git Bash,但我有一个主要问题。 我的项目有一个目录(其中有许多子目录),其名称只是一个下划线。 每当我尝试在该目录中的文件上运行git diff ,出现以下错误: $ git diff _/css/templates/jquery.tag-editor.css fatal: Invalid object name '_C'. 据我所知,下划线是一个文件/目录名称中完全有效的字符,并且在该目录内的Tab完成工作正常,所以我知道terminal可以“看到”里面。 另外,项目的其他贡献者,都运行OSX,没有这个问题。 而当我运行一个简单的git diff ,而没有指定任何单个文件,它工作正常,并愉快地包括在下划线目录中的任何更改的文件的差异。 如果我进入下划线目录并从那里运行git diff ,那么它也可以工作,所以我传递给它的path不包括下划线。 究竟发生了什么事情,以防止我在这些文件上运行git diff ? 当我试图这样做时,错误信息中的“C”来自哪里? 更新 当我运行git checkout — _/css/templates/jquery.tag-editor.css放弃对该文件的更改时,这是我看到的错误: error: pathspec '_C:/Program Files/Git/css/templates/jquery.tag-editor.css' did not match any file(s) known to git. C:\Program Files\Git是我的Git安装目录。 所以显然,部分path被解释为指Git安装目录? 再次,这是什么原因造成的呢?

基准cp + git on linux vs Windows:为什么这样的区别?

我使用这个Python脚本创build了大量的文件,我主要用它来testingGit。 结果是非常惊人的,尤其是Windows和Linux之间的差异。 基本上我的脚本创build了12个目录,每个目录都有512个文件。 每个文件大约2到4 kB。 使用Git对象的版本库大约有12k个文件。 我做了基准testing: 时间把所有的文件git add .到git git add . 结帐前一个分支的时间 有时间在相同的SSD上复制存储库 时间将存储库复制到外部SATA硬盘(NTFS) 我在Windows 10和Linux上使用同一个存储库来完成这个任务: Operation Linux Windows Ratio ——— —– ——- —– 1. git add . 0.47s 21.7s x46 2. git checkout HEAD~1 0.35s 16.2s x46 3. git checkout . 0.40s 20.5s x50 4. cp -r ssd->ssd 0.35s 1m14s x211 5. […]

MSysGit和sshconfiguration。 失踪

1)运行Git Bash(C:\ Program Files(x86)\ Git \ bin \ sh.exe –login) $ ssh -v git@github.com OpenSSH_4.6p1, OpenSSL 0.9.8e 23 Feb 2007 debug1: Reading configuration data /c/Users/Alexander Fedorov/.ssh/config debug1: Applying options for github.com debug1: Connecting to github.com [207.97.227.239] port 22. debug1: Connection established. … Hi xpoft! You've successfully authenticated, but GitHub does not provide shell access. … […]

通过batch file在GIT中创build修改文件的存档

我正在使用这个git命令来创build在特定提交中修改的文件的存档: git archive -o update.zip HEAD $(git diff –name-only COMMITID^) 其中COMMITID是我要归档的提交的ID。 这从命令行工作正常,但我想从batch file运行它。 以下是我正在使用的batch file的内容: git archive -o update.zip HEAD $(git diff –name-only %1^^) 其中%1是通过SourceTree传入的提交ID。 我遇到的问题是,从batch file运行时,此命令返回以下错误: 错误:未知选项`name-only' 我猜可能会有一些字符转义的问题,但我无法find具体的中断。 我将如何编写该git命令,以便它可以从batch file中工作? UPDATE 我尝试删除–name-only选项,并通过SourceTree尝试批处理脚本时收到以下错误: 致命的:找不到path:$(git 希望这有助于缩小可能发生的事情。 进一步更新 原来我的语法只是从特定的提交抓取修改的文件,但使用msandiford的答案是错误的我想出了这个batch file脚本,完美的作品: setlocal enabledelayedexpansion set output= for /f "delims=" %%a in ('git diff-tree –no-commit-id –name-only -r %1^^') do ( […]

在GitHub Windows客户端提交后文件不会同步?

经过多次尝试提交并同步后,我的部分文件不会同步到我的Github帐户。 我没有收到错误消息,但点击“同步”后,这些文件从未显示在我的帐户中。 截图:

Git(GitHub)在过去的date提交

我正在开发一个git项目(托pipe在GitHub上),并使用Gi​​tHub for Windows。 昨天,我取得了很大的成就,但GitHub for Windows保存(说它不能提交),我无法承诺。 我不想失去我的GitHub提交条纹,所以我想知道是否有任何方式提交过去的date,并与我的GitHub同步(如果这是可能的话)。 另外:我已经在git-bash中提交了我的提交,但尚未完成。

如何使“git分支”尊重Linux上的“core.ignorecase”标志?

我们正在使用位于办公室的Linux服务器上的远程Git存储库。 所有的客户端都是安装有Git Extensions的Windows PC作为客户端(使用msysgit运行)。 在客户端系统上,如果我尝试执行以下操作: git branch Branch1 git branch branch1 第二个命令会失败,告诉我具有该名称的分支已经存在。 这是我所期望的,因为我在git config中将core.ignorecase设置为true。 但是,如果我直接login到Linux系统并运行相同的命令,即使core.ignorecase标志设置为true,也会创build两个分支。 我会期望第二个命令也失败,因为我configuration存储库忽略的情况下,但标志在Linux系统上什么都不做,或者我错过了什么。 任何人都可以帮助我理解这个问题,因为我们计划将SCM从Source Safe迁移到Git,这个问题让我们感到害怕。 如果两个开发人员创build具有相同名称但不同情况的分支,并将结果推送到Linux存储库,会发生什么情况?

jenkins不能从git仓库使用windows批处理命令

当我build立我的jenkins项目我想拉我的git仓库所以代码是最新的,我可以看到git status和git –version正常,但是当它来到git pull控制台输出卡住加载像这个: 当我尝试命令提示符完全相同的命令和相同的目录,我可以在不到2秒成功拉动 jenkins命令和cmd命令有什么不同吗? 我使用Windows XP的SSH与git存储库进行身份validation。

如何使用Windows编辑器从cygwin添加分割Git diff hunk

我需要在做git add -p时候分割一个块。 但交互期间的e选项不起作用。 我将解释为什么它不工作,并询问我能做些什么来使其工作。 所以我的大块可能看起来像下面的代码。 从其他研究中我已经知道,我应该使用e选项,然后我的编辑会拿出大块的线,我可以删除我不想要的。 + virtual bool fat() const { + return true; + } + virtual bool lazy() const { + return true; + } 很明显,我想提交只是脂肪的方法,并保留另一个提交懒惰的方法。 问题是,我从Cygwin运行Git,并且编辑器设置如下: export EDITOR=/cygdrive/c/csm/notepad2/Notepad2.exe 顺便说一句,当我提交消息,这完美启动编辑器。 当我检查编辑器的命令行时,它看起来像 c:\csm\notepad2\Notepad2.exe /home/csm/path/to/my/code/.git/addp-hunk-edit.diff 显然这是Windows和Cygwin像两种非混合的东西混合在一起的时代之一,但是我想要一个解决scheme来弥合这个差距,而不是使用一些基于Cygwin的编辑器。 我相信cygwin和windows git-path混淆的问题与我的相反,因为我使用Cygwin附带的Git,并且希望使用Windows辅助工具,而该问题旨在将Windows原生的Git与一个Cygwin shell环境。