Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/github/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Git 如何从请求/提交中删除文件?_Git - Fatal编程技术网

Git 如何从请求/提交中删除文件?

Git 如何从请求/提交中删除文件?,git,Git,我的gitignore文件如下所示: # Ignore bundler config. /.bundle # Ignore all logfiles and tempfiles. /log/* !/log/.keep /tmp coverage/ public/system/ .DS_Store .env logfile development.log 无论出于何种原因,我的development.log文件总是出现在提交和拉取请求中。现在我有一个完整development.log文件存在

我的gitignore文件如下所示:

# Ignore bundler config.
 /.bundle

# Ignore all logfiles and tempfiles.
/log/*
!/log/.keep
/tmp
coverage/
public/system/
.DS_Store
.env
logfile
development.log
无论出于何种原因,我的development.log文件总是出现在提交和拉取请求中。现在我有一个完整development.log文件存在的打开拉取请求。如何删除它

我尝试了以下方法:

  • git重置头^app/log/development.log
  • git提交--修改--不编辑
  • git推送
  • 最终导致当前分支资源没有上游分支。要推送当前分支,请将远程分支设置为上游,使用git push--set upstream origin resource。我这样做,然后我检查我的公关和文件仍然存在,因为它显然是一个没有编辑

    我也试过了

  • git日志,找到了该文件的提交
  • git重置——软提交
  • git推送
  • 这里的问题是,该文件在本地存在,并且应该存在,但我希望将其从PR中剥离


    如何从拉取请求中删除文件,但不在本地删除它?

    如果您已经推送了该文件,只需删除该文件并提交已删除的文件,然后推送到远程


    如果仅提交未推送到远程,请尝试
    git reset HEAD~1
    (数字1表示重置一次提交)删除文件并推送到远程。

    如果已推送到远程,请删除文件并提交删除的文件并推送到远程


    如果仅提交未推送到远程,只需尝试
    git reset HEAD~1
    (数字1表示重置一次提交)删除文件并推送到远程。

    首先从git索引中删除日志文件,同时使用
    --cached
    选项将其保留在磁盘上:

    git rm --cached log/development.log
    
    然后签入文件删除:

    git commit -m 'remove development log'
    

    首先从git索引中删除日志文件,同时使用
    --cached
    选项将其保留在磁盘上:

    git rm --cached log/development.log
    
    然后签入文件删除:

    git commit -m 'remove development log'