问题标签 [git-checkout]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
git - GIT checkout 命令路径的简单解释
在checkout 命令的 git 文档中,可以找到以下文本:
...如果没有给出路径, git checkout 也会更新 HEAD 将指定的分支设置为当前分支...。
谁能更简单地解释一下这意味着什么?对不起,如果它看起来很简单,并且通过该页面阅读,我似乎无法想出它的确切含义。对不起,如果这看起来很基本..
特别是我对结帐如何更新 HEAD 感到困惑。我通常设想 checkout 会影响工作目录——这是 git 独有的功能,因为您正在更新存储库的本地副本以便以后使用它?
git - 在对旧提交进行本地更改后,如何返回我的分支?
我试图通过使用该git checkout
命令来获取我的代码的以前副本。不过,在使用它之前,我使用提交了最新版本的代码git commit
.
使用后git checkout
到以前的版本后,我对代码进行了更改。Git 现在通知我,因为我已经进行了更改,所以我不能再恢复到我提交的最新版本。
我不在乎我对我签出的这段代码所做的更改,我只想回到最新版本的代码。我该怎么做呢?
使用该命令git log
不再显示检出前的最新版本到以前的版本。
git - git checkout 某些文件尽管有冲突
我经常发现自己只想签出树中的某些文件但不能,因为我已经在本地修改了它们并且不想尝试找出合并的麻烦(我不想合并任何东西 - 我只想要某些文件的 git 版本) .
那么,如何强制签出这些文件分散在目录结构中的“db-backup *”?
例如
谢谢,
河。
git - Git检出文件-文件名中的大小写
Git新手在这里:)
面临与大小写相关的问题:文件aspnetdb.mdf
在几次提交前已从存储库中删除,我决定从一些较早的提交中恢复它,并且这样做是这样的:
想从第三次回提交中获取文件
但是git说,没有这样的文件。
然后我执行了以下操作:
效果很好 - 我有需要的文件。
然而。命令git checkout master~3 aspnetdb_log.ldf
(带有小写文件名)命令执行得很好。在所有开发期间。处理两个文件以相同的方式处理(没有黑客重命名等:))。
如何解释这种行为?我做错了什么?
git - 如果当前位于子目录下,是否需要在 GIT 中取消暂存文件的完整路径?
回购:合并测试
$密码
/gitvobs/mergetest/苹果
$git 状态
在分支 br1
已更改但未更新:
(使用“git add ...”来更新将要提交的内容)
(使用“git checkout -- ...”丢弃工作目录中的更改)
$git checkout 里面
错误:pathspec 'inside' 与 git 已知的任何文件都不匹配。
$git checkout apple/inside完美运行
所以每次,当我在子目录中时,我是否需要指定文件的完整路径以取消暂存更改?
add 不是这种情况(我可以在任何地方使用 'git add file-name' 添加文件)
这是 GIT 的行为方式还是在其他版本的 GIT 中发生了变化?
我正在使用 git 版本 1.6.6
谢谢
git - 活动 Git 分支在 hudson CI 上是“(无分支)”
我的 Ant build.xml 脚本以
Hudson CI 设置为在任何分支更改时构建。控制台输出是...
从控制台输出中,Hudson 知道它正在构建主题分支 DPM-48,但未设置环境变量 GIT_BRANCH 并且“git 分支”返回 git 处于“分离 HEAD”状态
我想知道的是我在哈德逊建立的哪个分支。必须有办法做到这一点。
git - Git:从另一个分支只添加文件的某些部分的最佳方法?
假设您有一个分支master
和另一个分支production
,它们都包含文件的一个版本prog.py
,以及许多其他文件。假设您修改了生产分支中的许多文件,包括prog.py
. 现在,将分支中的一些更改应用于分支中的版本的最佳方法是什么?prog.py
production
master
我开始移动到master
分支并从分支导入文件production
:
因为我希望能够git add -p
手动进行并选择更改。问题在于prog.py
工作树和索引中都存在问题。如何在不触及工作树的情况下将其从索引中删除?
或者有没有更好的方法来选择哪些更改prog.py
应该从production
分支导入到master
分支中?
git - Git:在分支之间移动更改而不更改工作目录
用例:每次我想将提交从一个 git 分支移动到另一个分支时,我都会执行以下一系列操作:
- [提交到工作分支]
git checkout
分支合并到git cherry-pick
目标提交git push
git checkout
工作分支
唯一的例外情况很好 - 每次我执行 'git checkout' 时,git 工作目录内容都会更改(预期),这会导致我的 IDE(IntelliJ IDEA)执行内部状态更新(因为受监控的文件系统子树在外部被修改)。这真的很烦人,尤其是在大量小提交的情况下。
我看到了两种方法:
- 执行“大量挑选”,即执行大量提交;将他们转移到另一个分支机构,例如在工作日结束时;
- 有第二个本地 git 存储库并对其执行樱桃选择,即每次实际提交和推送到工作分支时,转到第二个存储库,拉取更改并在那里执行樱桃选择;
我不喜欢第一种方法,因为它可能会忘记移动特定的提交。第二个看起来有点……不自然。
基本上,如果我可以说 git '将这个提交从名为 branchX 的分支移动到分支 branchX+1' 而不更新工作目录,那将是完美的。
问题:是否可以执行上述操作?
git - “git 分支 --track” 与 “git checkout --track”
“git branch --track”和“git checkout -b --track”有什么区别,如果有的话?
git - 在 Git 中签出早期标签以用于只读目的的最简洁方法
我的本地机器上有一个工作树,还有一个远程存储库。假设我想在一个已知标记处快速构建我的项目的早期版本,而不会干扰工作版本的当前状态。我的倾向是检查一棵单独的树,这似乎像这个问题一样:
使用来自远程存储库的克隆,然后在那里进行结帐。但是克隆做了很多工作并拉下了所有的修订状态。有没有什么轻量级的说法“在这个提交/标签中获取世界的当前状态并将其喷射到这个目录中?” (不需要进一步的修订控制——就 Git 而言,它是“只读的”。)
也许不是——只是检查。
谢谢。