我可以编辑两个文件,然后使用GitHub基于Web的编辑器进行一次提交吗?

时间:2013-07-23 16:31:33

标签: git github git-commit

GitHub具有基于Web的文件编辑功能。但是,似乎在编辑一个文件后,我必须在继续之前提交此文件的更改。有没有办法可以编辑两个或更多文件,然后为它们的所有更改进行一次提交?

我认为这会更好,因为太多不必要的提交很烦人。

7 个答案:

答案 0 :(得分:40)

有一种基于网络的解决方法:

  1. 创建一个临时分支,切换到它;
  2. 编辑多个文件,单独提交每个文件;
  3. 提出拉取请求;
  4. 合并拉取请求并删除临时分支。
  5. 我在PC上使用此方法,我不想安装git。

答案 1 :(得分:1)

GitHub Web Flow每次提交支持一个文件。要将多个文件添加到单个提交,您需要在本地克隆存储库,编辑文件,然后提交和推送。

命令行是这样的:

  1. cd到目录

  2. 使用

    暂存所有已修改的文件
    git add <file-1> <file-2> <etc>
    
  3. 提交

    git commit -m'<your-message>
    

    或者如果您想启动外部编辑器

    git commit
    
  4. 使用

    发送历史记录/提交
    git push
    

答案 2 :(得分:1)

@VictorIstomin和@MarCnu所说的补遗:

如果您想编辑多个文件名而不是这些文件的内容,只需按照Victor列出的说明操作,但您不必“确认壁球和合并”。您可以点击“确认合并”(这应该是唯一的选项,因为您实际上没有编辑文件内容。

这个问题已经得到了很好的回答,只是想为将来可能正在更改文件名的观众澄清这一点,这是我在GitHub中常做的事情。

答案 3 :(得分:0)

您可以分叉存储库并使用git将其克隆到本地计算机,更改您喜欢的文件数量,然后创建一个提交。

答案 4 :(得分:0)

下面的链接中有一些说明,适用于您已经在GitHub的Web浏览器视图中编辑了第一个文件时的情况:

https://webapps.stackexchange.com/questions/95940/how-can-i-change-multiple-files-and-submit-them-in-one-pull-request-on-github

摘要是:

  1. 通过单击另一个用户存储库中的“编辑”图标来编辑您的第一个文件。在第一次提交中保存此编辑。 GitHub会自动为您创建一个新的分支/分支,例如“ patch-1”。
  2. 请勿创建拉取请求。
  3. 转到个人档案中的存储库列表,然后转到您刚刚创建的分叉存储库,然后切换到“ patch-1”分支。 (这部分是最困难的,因为它并不明显。)
  4. 继续更改另一个文件,并将其提交到“ patch-1”分支。完成后,单击“创建请求请求”。您应该在此Pull Request中看到您的2次提交。
  5. 如果没有看到“创建请求请求”按钮,请在网络浏览器中打开如下网址:https://github.com/TargetPerson/TargetGitRepo/compare/master...MyGithubUsername:patch-1
  6. 这将显示一个视图,以将您所做的更改与其他用户存储库中的原始目标分支进行比较。然后按下“创建请求请求”按钮。

答案 5 :(得分:0)

让我们假设有问题的仓库是https://github.com/repoUsername/repoName

  1. 通过单击回购页面顶部的Fork按钮来分叉存储库。

enter image description here

  1. 在回购的分支中通过基于Web的文件编辑器根据需要编辑任意数量的文件。分别提交每个文件。

  2. 转到https://github.com/repoUsername/repoName/pulls并按下绿色的New pull request大按钮。

enter image description here

  1. 在下一页上,单击compare across forks链接。

enter image description here

  1. 然后在Choose a Head Repository字段中选择您的叉子

enter image description here

  1. Create pull request按钮将出现。单击它。

enter image description here

  1. 输入您的拉取请求的标题和描述,然后再次单击Create pull request按钮。

enter image description here

答案 6 :(得分:0)

如果您不想创建临时分支并合并更改(这会导致存储库中出现一堆用于合并提交的拉取请求),您可以上传多个(修改过的)文件,GitHub 将与他们一起创建一个提交。

注意,上传文件时,文件会上传到当前GitHub可见的文件夹中。

这种方法的缺点是,当你需要修改不同目录下的文件时,你需要要么上传你所有的项目文件(这会很慢)要么创建你的项目的骨架目录并放置在那里修改文件(以便 GitHub 修改正确的文件而不创建新文件)。

使用此方法时要小心,因为在您提交文件之前,GitHub 不会向您显示您的更改。