Tag: git新

我如何正确地git存储/popup预先提交挂钩得到一个干净的工作树进行testing?

我试图做一个预先提交钩与裸奔的unit testing,我想确保我的工作目录是干净的。 编译需要很长时间,所以我想尽可能地利用重新编译的二进制文件。 我的脚本遵循我在网上看到的例子: # Stash changes git stash -q –keep-index # Run tests … # Restore changes git stash pop -q 这虽然导致问题。 这是repro: 将// Step 1添加到a.java git add . 将// Step 2添加到a.java git commit git stash -q –keep-index #保存更改 运行testing git stash pop -q #恢复更改 在这一点上,我遇到了问题。 git stash pop -q显然有一个冲突,并在a.java我有 // Step 1 <<<<<<< […]

将更改推送到远程存储库时,这个Git警告消息是什么?

描述有点简洁。 我只是在我的本地主分支添加一个文件,并将其推回到一个远程的回购。 任何想法,为什么这会来? 警告:更新当前分支 警告:更新当前签出的分支可能会导致混淆, 警告:由于索引和工作树不能反映在HEAD中的更改。 警告:因此,您可能会看到刚刚推入的更改 警告:当你在那里运行'git diff'时会恢复,你可能会想要 警告:在开始工作恢复之前运行'git reset –hard'。 警告: 警告:您可以将“receive.denyCurrentBranch”configurationvariables设置为 警告:在远程存储库中“拒绝”禁止推入 警告:当前分支。 警告:要允许推入当前分支,可以将其设置为“忽略”。 警告:但是,除非您安排更新其工作,否则不build议这样做 警告:树匹配你以其他方式推送的东西。 警告: 警告:要压制此消息,可以将其设置为“警告”。 警告: 警告:请注意,未来版本的git中默认设置将会更改 警告:拒绝更新当前分支,除非你有 警告:configurationvariables设置为“忽略”或“警告”。

Git diff commit范围中的双点“..”和三点“…”之间有什么区别?

以下命令之间有什么区别? git diff foo master # a git diff foo..master # b git diff foo…master # c 差异手册谈到它: 比较分支机构 $ git diff topic master <1> $ git diff topic..master <2> $ git diff topic…master <3> 主题提示和主分支之间的变化。 同上。 从主题分支启动时发生在主分支上的更改。 但我不完全清楚。

用Git改变项目的第一次提交?

我想在我的项目的第一次提交中改变一些东西,而不会丢失所有后续的提交。 有没有办法做到这一点? 我不小心列出了我的原始邮件在源代码中的评论,我想改变它,因为我从垃圾邮件索引GitHub垃圾邮件。

在Windows上忽略Git仓库中的目录

我怎样才能在Windows上使用msysgit忽略Git中的目录或文件夹?

为给定的域指定一个SSH密钥用于git push

我有以下使用案例:我想能够使用gitolite-admin用户的私钥推送到git@git.company.com:gitolite-admin gitolite-admin ,而我想推送到git@git.company.com:some_repo使用“我自己的”私钥。 AFAIK,我无法使用~/.ssh/config来解决这个问题,因为在这两种情况下用户名和服务器名是相同的。 由于我主要使用自己的私钥,所以在~/.ssh/config为git@git.company.com定义了这个~/.ssh/config 。 有谁知道一种方法来覆盖用于单个git调用的密钥? (除此之外:gitolite根据密钥区分谁在推送,所以从访问权限,所有权和审计angular度来看,并不是一个问题,即user @ serverstring对于不同的用户来说是相同的)。

如何为Git仓库启用identstring?

如何在Git仓库中启用ident $Id$文件?

Git将HEAD标记合并到我的文件中

我尝试使用Git在命令行中合并文件,当出现错误消息告诉我合并被中止时。 我认为这是结束,但后来我意识到我的文件中有gitmarks。 像这样: start = expression validchar = [0-9a-zA-Z_?!+\-=@#$%^&*/.] integer = <<<<<<< HEAD digits:[0-9]+ { return digits.join(""); } ======= sign:"-"* digits:[0-9]+ { return sign + digits.join(""); } >>>>>>> gh-pages 这些文件不是由我编辑的,而是用以下内容显示的行: 不足符号<<<<<<< HEAD ( <<<<<<< HEAD ) 更改后的代码行 一串等号( ======= ) 新版本的代码 另一行以大于符号和分支名称开头( >>>>>>> gh-pages ) 更糟糕的是,文件内容不再有序。 有谁知道我如何让这些文件恢复正常,我在gh分支中所做的更改合并到主分支?

如何恢复受硬盘故障损坏的Git对象?

我有一个硬盘故障,导致一些Git存储库的文件损坏。 当运行git fsck –full我得到以下输出: error: .git/objects/pack/pack-6863e0a0e4b4ded6090fac5d12eba6ca7346b19c.pack SHA1 checksum mismatch error: index CRC mismatch for object 6c8cae4994b5ec7891ccb1527d30634997a978ee from .git/objects/pack/pack-6863e0a0e4b4ded6090fac5d12eba6ca7346b19c.pack at offset 97824129 error: inflate: data stream error (invalid code lengths set) error: cannot unpack 6c8cae4994b5ec7891ccb1527d30634997a978ee from .git/objects/pack/pack-6863e0a0e4b4ded6090fac5d12eba6ca7346b19c.pack at offset 97824129 error: inflate: data stream error (invalid stored block lengths) error: failed to read object 0dcf6723cc69cc7f91d4a7432d0f1a1f05e77eaa at […]

撤消混帐重置 – 在暂存区域中未提交的文件

我正在努力恢复我的工作。 我愚蠢地做了git reset –hard ,但在此之前我只做了get add . 并没有做git commit 。 请帮忙! 这是我的日志: MacBookPro:api user$ git status # On branch master # Changes to be committed: # (use "git reset HEAD <file>…" to unstage) # modified: .gitignore … MacBookPro:api user$ git reset –hard HEAD is now at ff546fa added new strucuture for api 是否有可能撤销git reset –hard在这种情况下?