要在 commit(提交)之前撤销 git add
,运行 git reset <file>
或 git reset
取消所有更改即可。
在旧版本的 Git 中,以上两个命令分别是 git reset HEAD <file>
和 git reset HEAD
。Git 1.8.2 做了更新。
你可以在下列文章中了解更多常用的 Git 操作:
Git 基础知识
了解 Git 项目的三个部分
Git 项目包含以下三个主要部分:
- Git 目录
- 工作目录(或工作树)
- 暂存区
Git 目录(位于 YOUR-PROJECT-PATH/.git/
中)是 Git 存储准确跟踪项目所需的所有内容的位置。这些内容包括元数据和一个对象数据库,其中包含项目文件的压缩版本。
工作目录是用户在本地对项目进行更改的地方。工作目录从 Git 目录的对象数据库中提取项目的文件,并将其放置在用户的本地计算机上。
暂存区是一个文件,用于存储下一次 commit 内容的信息。“commit” 的意思是你告诉 Git 保存暂存区的更改。 Git 照原样拍摄文件快照,并将该快照永久存储在 Git 目录中。
在三个部分中,文件可以在任何给定时间处于三种主要状态:提交,修改或暂存。在工作目录中对文件进行修改,然后,将其移至暂存区进行暂存,最后,commit 提交文件。
安装 Git
配置 Git 环境
Git 有一个 git config
工具,可用于自定义 Git 环境。你可以通过设置某些配置变量来更改 Git 的外观和功能。从计算机上的命令行界面(在 Mac 中为终端,在 Windows 中为 Command Prompt 或 Powershell)运行这些命令。
这些配置变量的存储级别分为三个级别:
- 系统:位于
/etc/gitconfig
中,将默认设置应用于计算机的每个用户。要对此文件进行更改,需要在git config
命令中使用--system
选项。 - 用户:位于
~/.gitconfig
或~/.config/git/config
中,将设置应用于单个用户。要对此文件进行更改,需要在git config
命令中使用--global
选项。 - 项目:位于
YOUR-PROJECT-PATH/.git/config
中,仅将设置应用于项目。要对此文件进行更改,需要使用git config
命令。
如果存在相互冲突的设置,则项目级别的配置将覆盖用户级别的配置,而用户级别的配置将覆盖系统级别的配置。
Windows 用户注意事项:Git 在 $HOME
目录(C:\Users\$USER
)中查找用户级配置文件(.gitconfig
)。Git 还会查找 /etc/gitconfig
,尽管它是相对于 MSys 根目录(在你运行安装程序时,你决定在 Windows 系统上安装 Git 的位置)来说。如果你使用的是 Windows 2.x 或更高版本的 Git,则在 Windows XP 上的 C:\Documents and Settings\All Users\Application Data\Git\config
中,或者 Windows Vista 及更高版本上的 C:\ProgramData\Git\config
中,也有一个系统级配置文件。此配置文件只能由管理员通过 git config -f FILE
修改。
添加用户名和邮箱
Git 在 commit 时将用户名和电子邮件作为信息的一部分。你需要使用以下命令在用户级配置文件下进行设置:
git config --global user.name "My Name"
git config --global user.email "myemail@example.com"
更改文本编辑器
Git 自动使用你的默认文本编辑器,但是你可以更改它。这是一个改用 Atom 编辑器的示例(--wait
选项告诉外壳程序等待文本编辑器,以便你可以在程序继续之前在其中进行工作):
git config --global core.editor "atom --wait"
给 Git 输出添加颜色
你可以使用以下命令配置外壳,为 Git 输出添加颜色:
git config --global color.ui true
使用命令 git config --list
查看所有配置设置。
在项目中初始化 Git
在计算机上安装并配置了 Git 之后,就需要在项目中对其进行初始化,以开始使用其版本控制功能。在命令行中,使用 cd
命令导航到项目的顶级(或根)文件夹。接下来,运行命令 git init
。这将安装一个 Git 目录文件夹,其中包含 Git 跟踪项目所需的所有文件和对象。
将 Git 目录安装在项目根文件夹中,这点很重要。 Git 可以跟踪子文件夹中的文件,但不会跟踪相对于 Git 目录的父文件夹中的文件。
在 Git 中获得帮助
如果你忘记了任何命令在 Git 中的工作方式,则可以通过几种方式从命令行获得 Git 帮助:
git help COMMAND
git COMMAND --help
man git-COMMAND
这将在你的 shell 窗口中显示该命令的手册页。要进行导航,请使用向上和向下箭头键滚动,或使用以下键盘快捷键:
- f 或空格键可向前翻页
- b 返回页面
- q 退出