如何使用git提交文件?

Kir*_*eck 74 git

这些教程都没有帮助!
他们都做了他们只是假设我知道该怎么做的事情.

目前,我的终端窗口以..开头

# Please enter the commit message for your changes. Lines starting
# with '#' will be ignored, and an empty message aborts the commit.
# On branch master
# Changes to be committed:
#   (use "git reset HEAD <file>..." to unstage)
#
#       deleted:    httpdocs/newsite/manifest/cache/0a432970ba6491fe65dad60b012e5c95_louloumay2011en-1-4dea3186b7f7b.jpg
#       deleted:    httpdocs/newsite/manifest/cache/0a61b5d7a9e97da78fe602e1ad41edb6_5-4dec7c3d57c80.jpg
#       deleted:    httpdocs/newsite/manifest/cache/0afb6a7716a85d0de46cdd03bb30f75f_fifa_panorama_full_page-01_thu-4dea3d1a0e0f5.jpg
#       deleted:    httpdocs/newsite/manifest/cache/0b3bc9be76a5d3e1e36af4b8dcf98658_free2-4df0e2e08761f.jpg
#       deleted:    httpdocs/newsite/manifest/cache/0b6342913b8e599fac76da452af98ec5_si-feb-2009-1-4dea3d1abcb61.jpg
#       deleted:    httpdocs/newsite/manifest/cache/0b9ddc587340f7744e03c4b2dafacf7f_lou-lou-winter-2009-cover-4dea3d1a9b1a0.jpg
#       deleted:    httpdocs/newsite/manifest/cache/0bf64ff8fc22720b3da20d0730fa6a04_chatelaine-dec-2009-4dea3d18daa30.jpg
#       deleted:    httpdocs/newsite/manifest/cache/0bf664e03eb0a2255b69b02aed85add0_summumfeb2011-2-4dea3188766aa.jpg
Run Code Online (Sandbox Code Playgroud)

但是没有办法知道如何做他们在这里做的事情..
http://learn.github.com/p/normal.html

它只是说

我们只需输入提交消息并退出编辑器.

那是什么意思?!
仅仅因为你写的字根本不意味着它很简单..

当我开始输入它时,确实是"记录"或"插入",并且有大约300个文件,并且它要我用消息替换每一行?!?

救命 !

我会使用他们方便的Mac应用程序,但如果它超过20个文件左右,它会冻结!
那是怎么回事??

Ben*_*mes 89

当您在git commit没有参数的情况下运行时,它将打开您的默认编辑器以允许您键入提交消息.保存文件并退出编辑器将进行提交.

看起来您的默认编辑器是Vi或Vim.键入时发生"奇怪的东西"的原因是Vi不会以插入模式启动 - 您必须首先点击i键盘!如果您不想这样,可以将其更改为更简单的内容,例如:

git config --global core.editor nano
Run Code Online (Sandbox Code Playgroud)

然后你将在提交时加载Nano编辑器(假设它已安装!),这对于没有使用模式编辑器(如Vi)的用户来说更加直观.

您在屏幕上看到的文字只是为了提醒您即将提交的内容.前面的行#表示它们是注释,即Git在保存提交消息时忽略这些行.您不需要为每个文件键入消息 - 只需在编辑器缓冲区的顶部输入一些文本.

要绕过编辑器,您可以提供提交消息作为参数,例如

git commit -m "Added foo to the bar"
Run Code Online (Sandbox Code Playgroud)

  • 不,这些行不会影响将要提交的内容.即使删除注释行,仍会提交这些文件.它们只是提醒您运行`git commit`命令时存储库的状态. (3认同)
  • 那是正确的.什么是承诺是对指数的'git add`-ed. (2认同)

Mar*_*air 24

听起来好像这里唯一的问题是启动的默认编辑器是,vi或者vim你不熟悉它.(由于快速提示,退出该编辑器而不保存更改,打Esc了几下,然后键入:,q,!Enter).

有几种方法可以设置默认编辑器,但是您没有说明您正在使用哪种操作系统,因此特别难以推荐.我建议使用:

 git config --global core.editor "name-of-your-editor"
Run Code Online (Sandbox Code Playgroud)

...为特定编辑器设置全局git首选项.或者,您可以设置$EDITOR环境变量.


One*_*sor 15

在标准的Vi编辑器中,你应该在这种情况下

  1. 按Esc
  2. 键入":wq"(不带引号)
  3. 按Enter键


pkk*_*pkk 13

我不知道你的系统环境,但似乎你输入了:

git commit
Run Code Online (Sandbox Code Playgroud)

您的默认编辑器已启动.在最糟糕的情况下(适合你)它可能是vim :)

如果您不知道如何退出vim,请使用:q.

如果您还有其他问题,可以使用

git commit -m 'Type your commit message here'
Run Code Online (Sandbox Code Playgroud)


Ali*_*Ali 12

用于提交所有已更改文件的命令:

git commit -a -m 'My commit comments'
Run Code Online (Sandbox Code Playgroud)

-a =所有已编辑的文件

-m =以下字符串是注释.

这将提交到您的本地驱动器/文件夹repo.如果要将更改推送到git服务器/远程托管服务器,请在上面的命令后键入:

git push
Run Code Online (Sandbox Code Playgroud)

GitHub的备忘单非常方便.