相关疑难解决方法(0)

使用Git版本控制查看文件的更改历史记录

如何在Git中查看单个文件的更改历史记录,完整的详细信息?

我有:

git log -- [filename]
Run Code Online (Sandbox Code Playgroud)

它显示了文件的提交历史记录,但是如何获取每个文件更改的内容?

我正试图从MS SourceSafe过渡到过去那么简单right-clickshow history.

git git-log

2920
推荐指数
23
解决办法
156万
查看次数

是否可以在Git中移动/重命名文件并保留其历史记录?

我想在Git中重命名/移动项目子树

/project/xyz
Run Code Online (Sandbox Code Playgroud)

/components/xyz
Run Code Online (Sandbox Code Playgroud)

如果我使用普通的git mv project components,那么所有的提交历史xyz project都会丢失.有没有办法移动这个以保持历史?

git rename mv

630
推荐指数
11
解决办法
32万
查看次数

如何将git标记为已删除的文件并将新文件作为文件移动?

我手动移动了一个文件,然后我修改了它.根据Git,它是一个新文件和一个删除文件.有没有办法强迫Git将其视为文件移动?

git

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

查看移动文件的GIT历史记录

尽管阅读了很多关于GIT和移动文件的帖子,但我仍然很难理解如何追踪完整的历史记录.这样gitk myfile的建议在这里似乎只能说明历史,直到前一个举动.据我所知,GIT不会跟踪文件,只跟踪文件的内容.所以我肯定能够查看文件的完整演变,即使它被移动了吗?

任何人都可以指导我一个简单的好例子/教程吗?

我想看一个示例,其中一些文件被移动,更改和提交,然后显示单个文件的历史记录,移动和所有.我一直在看'日志',但这似乎与checkins有关.仍然会欣赏一些建议,即使它说我仍然在想太多的SVN.

git

72
推荐指数
1
解决办法
2万
查看次数

如何告诉Git它是同一个目录,只是一个不同的名称

在学习了Git的几个障碍之后,我遇到了一个新的挑战:重命名目录(在本地,在工作目录中).

当我键入时git status,它会将旧目录名中的所有文件(在新目录中存在与新目录中完全相同的文件名)列为已删除,新目录名称为"未跟踪".

有没有办法告诉Git"它实际上是同一个目录,只是一个不同的名字"?

这样所有文件都只会被git status修改列出 ?

举例来说,这是git status我重命名整个目录时收到的输出:

git status
# On branch master
# Changes not staged for commit:
#   (use "git add/rm <file>..." to update what will be committed)
#   (use "git checkout -- <file>..." to discard changes in working directory)
#
#   deleted:    old-dir-name/file1
#   deleted:    old-dir-name/file2
#   deleted:    old-dir-name/file3
#
# Untracked files:
#   (use "git add <file>..." to include in what will be committed)
#
# …
Run Code Online (Sandbox Code Playgroud)

git

25
推荐指数
3
解决办法
1万
查看次数

重组项目文件夹后丢失git历史记录

我在一个月前做了一个提交,涉及我创建新的文件夹和子文件夹,并在我们之间移动我的源代码文件.我从那时起第一次浏览我的历史并且意识到git已经"丢失"了历史,因为原始文件被删除然后重新添加,我想 - 即当我在我的git GUI中查看文件时(它是根据NDA,所以我不能直接讨论它,但是例如,这个存储库也在GitHub上被破坏.GitHub清楚地显示它将提交检测为一系列动作.)它只显示每个文件的历史记录,当项目文件夹时被重组了.

在阅读了几个问题(获取Git以确认以前移动的文件,如何使git标记为已删除文件和将新文件作为文件移动?)之后,我比起初时更加迷失.从那些答案中听起来我根本无法解决这个问题?我真的很感激这里的任何帮助.

git version-control

18
推荐指数
2
解决办法
7043
查看次数

Git如何在重构期间跟踪历史记录?

我很清楚Git如何支持文件移动:因为它使用文件哈希,"添加"文件很容易被检测为与"删除"文件相同.

我的问题是关于重构:考虑到Java,包声明会发生变化,因此文件内容将不相同.在这种情况下,Git如何确定"添加"文件与"已删除"文件共享历史记录?它是否检查"最相似的内容",假设我只做了一些小改动,或类似的非确定性解决方案?

git hash refactoring dvcs

17
推荐指数
1
解决办法
5288
查看次数

让Git关注重命名和编辑的文件

大约在Git中重命名文件的问题 过,但我不能制定出一个解决方案,我的具体问题.

我已经移动并编辑了多个文件(我没有使用git mv- 不幸的是现在已经太晚了).现在我想要它,所以当我的同事从我的存储库中取出时,对这些相同的文件进行了自己的编辑(没有移动它们),它成功地将我的更改与他在文件的新位置中合并.为了成功合并,Git显然需要知道这些文件是相同的.

Git是否足够聪明地独自完成这项工作?似乎很难相信.如果是这样,我怎么能确定Git会拾取特定的文件移动 - 即使内容已经改变了?

git version-control file-rename git-merge

15
推荐指数
2
解决办法
9174
查看次数

能够处理文件移动的版本控制系统?

我正在为我的软件公司寻找一个新的版本控制系统,这个系统相当小.到目前为止,我一直在使用CVS,但我有点关于重组文件结构的OCD,因此,我似乎总是在我的所有代码的版本1(因为更改目录名称会引发CVS的版本控制窗户).是否有更多针对开发阶段的版本控制系统(项目目录树不断变化)或者我是否需要扣下并开始编写自己的版本控制系统?基本上,我需要它来基于物理文件路径之外的其他东西来跟踪文件的版本,这样移动不会影响文件版本信息.任何建议将不胜感激.谢谢!

干杯,Lukas Rezek

svn versioning git cvs version-control

2
推荐指数
1
解决办法
326
查看次数