问题标签 [git-add]
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 add -p 丢弃更改?
我运行git add
了一些文件,构成了一组逻辑上的单独更改,对它们进行了其他更改,并使用git add -p
. 进行到一半,我意识到我还没有提交上一组。
的交互式帮助git add -p
仅提供以下选项:
如何重置添加的补丁?
git - git add - 当当前目录中没有模式匹配时,避免使用通配符从子目录添加文件
git add *.c
应该只从当前目录添加匹配文件,而不是从其子目录添加。我注意到如果没有文件与当前目录中的搜索模式git add *.c
匹配,则从子目录中添加匹配的文件。
有谁知道如何避免这种行为?
git - 如果一个文件正在被跟踪并且你修改它,你可以不添加就提交吗?
假设<filename>
由 git 跟踪,
git commit -m "message" <filename>
可以不做
git add <filename>
?
git - 将文件添加到 .git 并且在推送到上游时不要删除它们
我正在考虑将一些文件添加到.git
repo 目录,并将push
它们添加到上游而不跟踪/提交它们。
例子:
在我做 a 之后commit
,我将文本添加到information.txt
,然后push
。当我clone
/fork 时,我仍希望将这个文件保存在.git
.
我基本上想要的是拥有不被跟踪的文件,并且上游中的内容在git push
发布时使用本地 repo 中的现有内容进行更新。
我想这样做的方法是破解git-init
并添加我想要的任何内容,然后查看git push
/ clone
/fork 对.git
文件夹的作用,并保留新文件并将它们发送到上游。但我在想也许还有另一种方法。
是否有我缺少的配置选项?
git - Git:如何添加与模式匹配的文件,同时仍然忽略 .gitignore 中列出的模式?
首先,如果之前有人问过这个问题,我们深表歉意;这是一件相当困难的事情。
我想知道如何将与特定模式匹配的所有文件添加到索引中,同时仍然排除.gitignore
.
例如,我有一个包含一些 tex 代码的仓库。我保留.tex
文件以及.pdf
在版本控制下编译,同时忽略辅助文件:
我经常同时提交.tex
文件和.pdf
文件,因此我在 repo 中有以下文件:
我想做的是能够运行git add mytexdoc.*
添加与此模式匹配的文件,但不会在.gitignore
, iemytexdoc.tex
和mytexdoc.pdf
. 但是,当我运行此命令时,会收到如下消息:
甚至有可能做到这一点吗?如果没有,有人知道它背后的原理吗?因为这对我来说似乎违反直觉。
git - 首次将文件添加到存储库
Kiddie 问题在这里——我已经阅读了各种关于 git add 的帖子,但找不到这种情况。
我一直在我自己的计算机上处理一些文件,甚至没有考虑 Git 或版本控制,我刚刚在 Github 上创建了一个存储库,以开始跟踪这些更好/学习 git 以供我自己启迪。我要做的是初始化一个本地存储库,在我的计算机上添加现有文件,然后将它们推送到我在 Github 上的存储库。我使用的是 10.6.8 版本的 Mac。
对于我拥有的文件,有一个父目录,然后是几个子目录,每个子目录中都有一些文件——足以让在 Github 上手动创建和复制它们变得乏味。
因此,根据我正在阅读的各种文档,我认为我应该执行以下操作:
1) cd Users/myname/Documents/etc.etc.etc./most-high-level-directory-of-my-project-on-my-local-machine
2) git init
-- 终端说:
重新初始化现有的 Git 存储库在 /Users/.../.../most-high-level-directory-of-my-project-on-my-local-machine/.git/
3) git status (只是为了检查,我不是期待索引中的文件)
- 终端说:
#在分支主机
上没有提交,工作目录干净
4)git add *(这是我期望git添加当前目录的所有子文件夹/文件的地方到索引,所以我可以提交它们并将它们推送到 Github)
——终端什么也没说。没有错误信息。没有成功消息。
5) 混帐状态
--终端说:
#在分支master
上没有提交,工作目录干净
我在 #4 尝试了不同的东西,并在我初始化我的 repo 的地方不起作用后从几个不同的目录中尝试了它:
git add 。
git add(父文件夹的特定路径)
git add(一个特定文件,只是为了查看该文件是否会被添加到索引中)
我读到的所有内容都说,如果一个 repo 被初始化,它应该可以工作,但无论我做什么,这个命令绝对不会做任何事情。
我觉得我必须错过一个关于整个过程如何工作的非常基本的概念,但是我读过的教程或问题都没有解决 git add 的问题,只是在我初始化一个 repo 后什么都不做。关于可能导致这种情况的任何想法?格拉西亚斯!
git - 在 git 中添加所有文件
我有这个 git 状态:
如何添加 2 个文件?git add -A
不工作?git add ../../.
我知道出于显而易见的原因可以使用该选项。
我知道可以使用git add
选项添加文件,但我不记得了,也找不到。我用git version 1.8.1.msysgit.1
.
git - Git删除文件而不使用git rm
通常我会在处理合并冲突时删除一个文件(通过 Finder)。当我去结束我的合并时,我尝试git rm my_file.txt
并得到一个错误,即fatal: unable to stat 'my_file.txt': No such file or directory
.
我是否必须去 CLI 并且总是这样做git rm my_file.txt
,或者是否有一个 git 技巧可以标记我刚刚删除的文件应该被删除?
git - git reset --soft reset last commit 怎么能不接触索引文件?
这可能是一个菜鸟问题。
假设我有一个 Git 存储库,它已经使用 git add 在暂存区域中有一些文件。然后我做一个git reset --soft @~
我很高兴看到我上次提交的一些文件现在被放入暂存区。
但是怎么做?我检查.git
文件夹。唯一改变的是当前分支的参考。还有一个我认为不相关的“ORIG_HEAD”。最可疑的索引文件根本没有被触及。还有谁能告诉我如何查看它的内容?
那么 git 怎么能做到这一点呢?谢谢。
git - git add 之间的任何区别。和 git add --all?
有什么区别:
和
?