如果你从命令行使用Git,有没有办法一次性删除在Changed但未更新列表中要删除的所有文件?而不是使用通配符手动删除.
我是git的新手所以请耐心等待.
假设我有一个包含敏感数据的版本控制下的文件.果然,我将该文件放在我的.gitignore文件中,因此它不会被推送到repo.现在的问题是在我的项目中的某个地方我有一条线
#include <sensitivedata>
Run Code Online (Sandbox Code Playgroud)
或者你选择的语言是什么.问题是每当有人从该存储库中克隆时,该文件丢失并且在尝试构建/编译解决方案时会出现致命错误.
所以,而不是推送我正在实际工作的文件,我想推送一些具有相同名称的虚拟文件,我在那里发表评论
// replace the next line with the sensitive data!!!
Run Code Online (Sandbox Code Playgroud)
我该怎么做?
所以,我有一个我一直在分支A工作的文件,我只是准备提交它.但是,看看差异,我认为最好把它分成两个单独的提交(好吧,在这种情况下,可能是两个独立的分支).我之前使用过git add --patch来分离各个帅哥,所以我想我可以用它.问题是,我需要分开我的一个人.运行git add --patch SdA.py和使用e编辑问题块...
# Manual hunk edit mode -- see bottom for a quick guide
@@ -50,13 +50,74 @@ import PIL.Image as im
import constant
+
+def exp_range(min=None, max=None, step=None):
+ """
+ Generate an exponentially increasing value scaled and offset such
+ that it covers the range (min, max]. Behaviour is similar to
+ exp(x), scaled such that the final value generated is equal to
+ 'max'. 'step' defines the granularity of …Run Code Online (Sandbox Code Playgroud) 如果我从我的工作(父)目录创建初始提交会发生什么,但是有子库有独立签出的git repos?
我只是做了git add .但是当带有嵌套Git repos的子目录没有被注册为父repo的子模块时,这让我陷入了一种奇怪的境地.
那么:如何在最初的"git add"之后继续.在一个父工作目录,其中有已独立签出的嵌套git回购的子目录(为了获得正确的子模块)?
一个例子:
[imz@z super-existing-sub]$ ls
c sub
[imz@z super-existing-sub]$ ls -a sub/
. .. a .git
[imz@z super-existing-sub]$
Run Code Online (Sandbox Code Playgroud)
所以,里面已经存在一个预先存在的super-existing-sub/subgit repo super-existing-sub.
我跑进去之后super-existing-sub:
$ git init
$ git add .
Run Code Online (Sandbox Code Playgroud)
如何正确注册预先存在的Git仓库作为子模块?
现在,Git以某种方式跟踪它:
$ git status
On branch master
Initial commit
Changes to be committed:
(use "git rm --cached <file>..." to unstage)
new file: c
new file: sub
$
Run Code Online (Sandbox Code Playgroud)
但git submodule有一些问题:
$ git submodule status
No …Run Code Online (Sandbox Code Playgroud) 我使用GitHub的电子环境为OS X编译二进制文件,并希望将输出添加到git存储库.
我试过了
git add .
error: readlink("sulu.app/Contents/Frameworks/Electron Framework.framework/Electron Framework"): Function not implemented
error: unable to index file sulu.app/Contents/Frameworks/Electron Framework.framework/Electron Framework
fatal: adding files failed
Run Code Online (Sandbox Code Playgroud)
有想过解决这个问题吗?
所以我有一个文件:
...
some code here..
...
some unrelate code here..
...
Run Code Online (Sandbox Code Playgroud)
我对它做了以下更改:
...
some code here that needs to be changed a bunch..
...
some unrelated code here..
...
Run Code Online (Sandbox Code Playgroud)
假设我正处于第一部分的一些重大变化中,我注意到后面部分中的拼写错误.我想修复拼写错误并提交并可能立即推送,但我仍然在处理第一部分而不是阅读以分享它.显然我可以使用git stash或者进行中间提交并在另一个分支中修复拼写错误但是有没有办法只将文件中的一些更改添加到暂存区域.显然我可以解开拼写错误,git add myfile然后重新拼写错字,但如果拼写错误修复更复杂,可能会有点烦人.有没有办法在文件中指定我想要添加的行git add?
git add -p以交互方式暂存变更非常方便.在每次更改时,它会提示用户按一个键以确定Git应对所涉及的更改执行的操作:
Stage this hunk [y,n,q,a,d,/,K,j,J,g,s,e,?]?
Run Code Online (Sandbox Code Playgroud)
无论如何,让git移动到下一个大块而不必击中Enter?
假设一个文件与git处于冲突状态.
这意味着索引包含3个版本的文件,前一个,一个来自一个分支,另一个来自另一个分支.
我想在工作目录中查看版本3("他们的"),并在索引中查看版本2("我们的").
有没有一种无痛的方法可以做到这一点?
假设我有两个现有的文件夹,我想放在Git源代码管理下.一个叫CurrentProduction,另一个叫CurrentDevelopment.以下步骤是否正确?
MyProject
git init
CurrentProduction内容移动到MyProject
git add .
git commit -m 'initial master commit'
git checkout -b develop
MyProject(当然除了.git文件夹)
CurrentDevelopment内容移动到MyProject
git add -A
git commit -m 'initial develop commit'
还是有"不同"的方式?
我有很多文件只有文件权限不同.但实际上有些文件被修改了.
我想将只有文件权限更改的所有文件添加到自己的提交中.
git --versiongit version 1.8.3.1
Run Code Online (Sandbox Code Playgroud)
git diff 输出:diff --git a/.htaccess b/.htaccess
old mode 100755
new mode 100644
diff --git a/.htaccess.sample b/.htaccess.sample
old mode 100755
new mode 100644
etc...
Run Code Online (Sandbox Code Playgroud)
git diff --name-statusM .htaccess
M .htaccess.sample
M robots.txt
M index.php
etc...
Run Code Online (Sandbox Code Playgroud)
git diff -G. --name-status
Run Code Online (Sandbox Code Playgroud)
输出:
M robots.txt
M index.php
Run Code Online (Sandbox Code Playgroud)
但是如何只添加具有更改权限的文件,这些可以提交?
编辑:
git diff-files100755 100644 fd0fa6002522f4f4bc46e4339671a6ea99969371 0000000000000000000000000000000000000000 M .htaccess
:100755 100644 383313a383445374f63364cd1985753e86418d04 0000000000000000000000000000000000000000 M .htaccess.sample
:100644 100644 e09ab6b6b0cf13a895d00ec97dae12d8ba2c364b 0000000000000000000000000000000000000000 M robots.txt
:100755 100644 56bdb6c86654bdba26b750d36db17b5e15279c86 0000000000000000000000000000000000000000 M …Run Code Online (Sandbox Code Playgroud) git ×10
git-add ×10
git-commit ×2
conflict ×1
git-commands ×1
git-init ×1
git-patch ×1
git-rm ×1
interactive ×1
symlink ×1