相关疑难解决方法(0)

git config --global写到哪里?

git config --global用于设置时,它将写入哪个文件?

例:

git config --global core.editor "blah"
Run Code Online (Sandbox Code Playgroud)

我在这些地方找不到它:

C:\Program Files\Git\etc\gitconfig

C:\myapp\.git\config
Run Code Online (Sandbox Code Playgroud)

我还没有设置ENV?

我的Git版本:1.6.5.1.1367.gcd48 - 在Windows 7上

git config

958
推荐指数
12
解决办法
67万
查看次数

如何让Git将文件视为二进制文件?

遇到中型项目的问题,因为git将它们视为文本和合并,因此Visual Studio项目文件会出现问题.我想将文件设置为二进制文件,以便git不会自动合并这些文件.

有没有办法做到这一点?

git

93
推荐指数
2
解决办法
3万
查看次数

在所有git项目中,是否可以让所有"git diff"命令使用"Python diff"?

包括该行时

*.py diff=python
Run Code Online (Sandbox Code Playgroud)

在本地.gitattributes文件中,git diff为不同的Python文件(具有更改所在的函数的名称等)生成漂亮的标签.

是否有可能要求git对所有 git项目中的所有 Python文件使用此diff模式?我尝试设置全局〜/ .gitattributes,但本地git存储库不使用它.有没有比使用?初始化每个新git项目更方便的方法?ln -s ~/.gitattributes

python git diff gitattributes

14
推荐指数
1
解决办法
862
查看次数

使用.gitattributes强制LF行结尾而不会丢失自动文本/二进制推理?

我想用eol=LF我的.gitattributes文件,但我想它适用于将文件的Git自动确定为文本文件.

我能找到的最好的方法是将特定的文件扩展名/ globs定义为文本或二进制文件.这并不理想,因为列表可能很大.我试过了* text=auto eol=LF,但eol=LF部件似乎覆盖了auto部分.

我可以在不需要特定git config设置的情况下强制LF行结尾,并且不会丢失自动文本/二进制推断吗?

git newline

13
推荐指数
1
解决办法
1470
查看次数

为什么git一直在弄乱我的行尾?

我在Windows上,我已core.autocrlf禁用:

$ git config core.autocrlf; git config --global core.autocrlf
false
false
Run Code Online (Sandbox Code Playgroud)

现在,我认为,git不会破坏任何行结尾,但我的仓库中的一些文件会导致问题.

我刚刚克隆了一份repo的新副本,git已经告诉我有没有分期更改.当我git diff -R,我可以看到CRLF行结尾已添加到文件中:

diff --git b/nginx-1.11.1/contrib/geo2nginx.pl a/nginx-1.11.1/contrib/geo2nginx.pl
index bc8af46..29243ec 100644
--- b/nginx-1.11.1/contrib/geo2nginx.pl
+++ a/nginx-1.11.1/contrib/geo2nginx.pl
@@ -1,58 +1,58 @@
-#!/usr/bin/perl -w
-
-# (c) Andrei Nigmatulin, 2005
+#!/usr/bin/perl -w^M
+^M
+# (c) Andrei Nigmatulin, 2005^M
Run Code Online (Sandbox Code Playgroud)

我不明白这些行结尾的来源,但我也无法"恢复"这种变化.当我再次签出文件时,它仍将在以后修改:

$ git checkout -f nginx-1.11.1/contrib/geo2nginx.pl
$ git status
On branch dev
Your branch is up-to-date with 'origin/dev'.
Changes not staged for commit:
  (use "git add <file>..." to update what …
Run Code Online (Sandbox Code Playgroud)

windows git

13
推荐指数
1
解决办法
3248
查看次数

$(前缀)/ etc/gitconfig上的$(前缀)是什么?

gitconfig(1):

如果没有使用--file显式设置,则有四个文件,其中git config将搜索配置选项:

...

$(前缀)/etc/gitconfig

    系统范围的配置文件.

什么是$(prefix)$(prefix)/etc/gitconfig

git configuration prefix git-config

11
推荐指数
1
解决办法
1399
查看次数

如何在Git中为特定的文件扩展名设置difftool/mergetool?

是否可以设置自定义工具以在Git中合并具有特定扩展名的文件?

感谢您的任何指示!

更新

我无法找到比定义自定义difftool更好的解决方案,并且像@jarodeells建议的那样手动调用它:

[diff]
    tool = mydiff
[difftool "mydiff"]
    cmd="script.sh \"$LOCAL\" \"$REMOTE\""
Run Code Online (Sandbox Code Playgroud)

然后明确地调用它:

$ git difftool -t mydiff someFileWith.ext
Run Code Online (Sandbox Code Playgroud)

git version-control git-diff git-merge git-config

8
推荐指数
2
解决办法
2047
查看次数

在Github上查看.docx文件,并在.docx文件格式上使用git diff

我有两个问题:

  1. 有没有办法查看.docx文件Github?我们已将所有作业上传到Github,但我们无法在浏览器中查看它.如果我们可以.docx在不下载文件的情况下在浏览器中查看这些文件,那就太好了.

  2. 如何使用git diff.docx文件格式?我尝试使用catdoc但它对我不起作用.我想我以前曾git diff在Windows上用过这种.doc格式,但它在Mac上并不适用于我.

非常感谢.

git github

7
推荐指数
5
解决办法
5514
查看次数

为什么git将一些cpp文件视为二进制文件?

这里的输出git log:

* 5a831fdb34f05edd62321d1193a96b8f96486d69      HEAD (HEAD, origin/work, work)
|  LIB/xxx.cpp                        |  Bin 592994 -> 593572 bytes
|  LIB/xxx.h                          |    5 +++++
|  LIB/bbb/xxx.h                      |    9 +++++++++
|  LIB/aaa/xxx.cpp                    |  Bin 321534 -> 321536 bytes
|  LIB/aaa/yyy.cpp                    |   31 +++++++------------------------
|  tests/aaa/xxx.cpp                  |   29 +++++++++++++++++++++++++++++
|  tests/test_xxx.vcproj              |    4 ++++
|  7 files changed, 54 insertions(+), 24 deletions(-)
Run Code Online (Sandbox Code Playgroud)

为什么它将某些文件视为二进制文件,而其他文件则不是?这给出了严重的问题,因为git也不想自动合并它们.因此几乎所有的merge/rebase/pull动作都变得很痛苦.

这是repo配置:

[core]
  repositoryformatversion = 0
  filemode = false
  bare = false
  logallrefupdates = true
  symlinks = false
  ignorecase = true …
Run Code Online (Sandbox Code Playgroud)

git

5
推荐指数
2
解决办法
4839
查看次数