相关疑难解决方法(0)

使用Git将特定文件重置或还原到特定版本?

我已经对作为一组文件的一部分提交了几次的文件进行了一些更改,但现在想要将其上的更改重置/还原到以前的版本.

我已经做了git log一个git diff找到我需要的修订版,但是根本不知道如何将文件恢复到以前的状态.

git version-control git-checkout

4255
推荐指数
31
解决办法
179万
查看次数

仅存储使用Git更改的多个文件中的一个文件?

如何在我的分支上只隐藏多个已更改文件中的一个?

git git-stash

2895
推荐指数
20
解决办法
74万
查看次数

在Git中,HEAD,工作树和索引之间有什么区别?

有人能告诉我在Git中HEAD,工作树和索引之间的区别吗?

据我所知,它们都是不同分支的名称.我的假设是否正确?


编辑

我找到了这个

单个git存储库可以跟踪任意数量的分支,但是您的工作树只与其中一个分支相关联("当前"或"已检出"分支),HEAD指向该分支.

这是否意味着HEAD和工作树总是一样的?

git version-control

453
推荐指数
5
解决办法
13万
查看次数

为什么git不能通过路径进行硬/软复位?

$ git reset -- <file_path> 可以通过路径重置.

但是,$ git reset (--hard|--soft) <file_path>会报告如下错误:

Cannot do hard|soft reset with paths.
Run Code Online (Sandbox Code Playgroud)

git git-reset

123
推荐指数
5
解决办法
6万
查看次数

什么是“git restore”命令,“git restore”和“git reset”有什么区别?

当我想取消暂存文件时,我所有的 Git 教程都显示如下内容:

$ git add *
$ git status
On branch master
Changes to be committed:
  (use "git reset HEAD <file>..." to unstage)

    renamed:    README.md -> README
    modified:   CONTRIBUTING.md
Run Code Online (Sandbox Code Playgroud)

此提示告诉我们git reset用于取消暂存文件。

但是,在我的终端中,我看到:

git status
On branch master
Changes to be committed:
  (use "git restore --staged <file>..." to unstage)
    renamed:    cat.js -> catcat.js
    renamed:    tolendo.gogo -> tolendo.txt

Untracked files:
  (use "git add <file>..." to include in what will be committed)
    readme (copy).md
    tolendo (copy).txt
    zing (copy).html
Run Code Online (Sandbox Code Playgroud)

我的终端告诉我使用,git …

git restore git-reset unstage

107
推荐指数
4
解决办法
8万
查看次数

"git checkout <filename>"和"git checkout - - <filename>"之间的区别

http://norbauer.com/notebooks/code/notes/git-revert-reset-a-single-file

我找到了一个帖子.

但还是不知道之间有什么区别

  1. git checkout <filename>

  2. git checkout -- <filename>

在什么情况下我应该分别使用第一个和第二个?

git

102
推荐指数
2
解决办法
4万
查看次数

如何在Git中规范化工作树行结尾?

我克隆了一个存在不一致行结尾的存储库.我添加了一个.gitattributes为我想要规范化的文件设置text属性.现在,当我提交更改时,我收到消息:

warning: CRLF will be replaced by LF in FILE.
The file will have its original line endings in your working directory.
Run Code Online (Sandbox Code Playgroud)

如何让git为我标准化我的文件的工作副本?我希望git能够规范化整个工作树.

git line-endings gitattributes

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

删除名称不合适的git分支

我知道这不是一个严格的编程问题,但它与git有关.我不小心在git中创建了一个分支--track(我在合并远程分支时得到了错误的选项顺序)

常规命令不起作用:

git branch -D "--track"  
Run Code Online (Sandbox Code Playgroud)

我试图用引号和反斜线逃脱,但是都不起作用.

有任何想法吗?

git git-branch

50
推荐指数
3
解决办法
9250
查看次数

git checkout HEAD-文件名和git checkout-文件名之间的区别

让我们从一种情况开始。

  1. 我进行了一些更改(5个文件) git stash
  2. 更改一些文件
  3. 提交更改 git commit -m "Commit message"
  4. 从存储中获取更改 git stash apply

由于提交,我在2个文件中收到合并冲突。我不再需要这2个文件中的更改,因此我尝试还原这些更改。

我做了 git checkout -- background.js

它因错误而失败

错误:路径“ src / background / background.js”未合并

但是后来我读了这篇SO帖子并尝试

git checkout HEAD -- background.js
Run Code Online (Sandbox Code Playgroud)

它可以成功工作。这两个文件都发生在我身上。我想了解两者之间的区别

git checkout -- filegit checkout HEAD -- file

git git-stash git-checkout merge-conflict-resolution

5
推荐指数
1
解决办法
3385
查看次数