Git使用说明

Git使用说明

Git 配置

Git 提供了一个叫做git config的工具,专门用来配置或读取相应的工作环境变量。

这些环境变量,决定了 Git 在各个环节的具体工作方式和行为。这些变量可以存放在以下三个不同的地方:

  • /etc/gitconfig 文件:系统中对所有用户都普遍适用的配置。若使用 git config 时用 –system 选项,读写的就是这个文件。
  • ~/.gitconfig 文件:用户目录下的配置文件只适用于该用户。若使用 git config 时用 –global 选项,读写的就是这个文件。
  • 当前项目的 Git 目录中的配置文件(也就是工作目录中的 .git/config 文件):这里的配置仅仅针对当前项目有效。每一个级别的配置都会覆盖上层的相同配置,所以 .git/config 里的配置会覆盖 /etc/gitconfig 中的同名变量。

在 Windows 系统上,Git 会找寻用户主目录下的 .gitconfig文件。主目录即 $HOME 变量指定的目录,一般都是 C:\Documents and Settings$USER。

此外,Git 还会尝试找寻 /etc/gitconfig 文件,只不过看当初 Git 装在什么目录,就以此作为根目录来定位。

用户信息

配置个人的用户名称和电子邮件地址:

git config --global user.name "huahua"
git config --global user.email test@huahua.com

如果用了--global选项,那么更改的配置文件就是位于你用户主目录下的那个,以后你所有的项目都会默认使用这里配置的用户信息。

如果要在某个特定的项目中使用其他名字或者电邮,只要去掉 –global 选项重新配置即可,新的设定保存在当前项目的 .git/config 文件里。

文本编辑器

设置Git默认使用的文本编辑器, 一般可能会是 Vi 或者 Vim。如果你有其他偏好,比如 Emacs 的话,可以重新设置::

git config --global core.editor emacs

差异分析工具

还有一个比较常用的是,在解决合并冲突时使用哪种差异分析工具。比如要改用 vimdiff 的话:

git config --global merge.tool vimdiff

Git 可以理解 kdiff3,tkdiff,meld,xxdiff,emerge,vimdiff,gvimdiff,ecmerge,和 opendiff 等合并工具的输出信息。

查看配置信息

要检查已有的配置信息,可以使用git config --list命令:

git config --list

http.postbuffer=2M
user.name=huahua
user.email=test@huahua.com

有时候会看到重复的变量名,那就说明它们来自不同的配置文件(比如 /etc/gitconfig 和 ~/.gitconfig),不过最终 Git 实际采用的是最后一个。

这些配置我们也可以在 ~/.gitconfig 或 /etc/gitconfig 看到,如下所示:

vim ~/.gitconfig 

显示内容如下所示:

[http]
    postBuffer = 2M
[user]
    name = runoob
    email = test@runoob.com

也可以直接查阅某个环境变量的设定,只要把特定的名字跟在后面即可,像这样:

$ git config user.name
huahua

常用指令

创建仓库命令

下表列出了 git 创建仓库的命令:

命令 说明
git init 初始化仓库
git clone 拷贝一份远程仓库,也就是下载一个项目。

提交与修改

Git 的工作就是创建和保存你的项目的快照及与之后的快照进行对比。

下表列出了有关创建与提交你的项目的快照的命令:

命令 说明
git add 添加文件到暂存区
git status 查看仓库当前的状态,显示有变更的文件。
git diff 比较文件的不同,即暂存区和工作区的差异。
git commit 提交暂存区到本地仓库。
git reset 回退版本。
git rm 将文件从暂存区和工作区中删除。
git mv 移动或重命名工作区文件。
git checkout 分支切换。
git switch (Git 2.23 版本引入) 更清晰地切换分支。
git restore (Git 2.23 版本引入) 恢复或撤销文件的更改。

提交日志

命令 说明
git log 查看历史提交记录
git blame 以列表形式查看指定文件的历史修改记录

远程操作

命令 说明
git remote 远程仓库操作
git fetch 从远程获取代码库
git pull 下载远程代码并合并
git push 上传远程代码并合并

其他指令

打标签

  1. 查看标签
git tag
  1. 打标签
git tag -a <tagname> -m "tag desc"

创建新分支并推送到远程仓库

  1. 创建新分支:

    首先,使用 Git 命令创建新的分支。假设要创建一个名为 new-feature 的新分支,可以使用以下命令:

    git checkout -b new-feature
    

    这将创建一个名为 new-feature 的新分支,并将当前分支切换到该分支。

  2. 在新分支上进行工作:

    在新分支上进行修改、添加新文件等工作,完成新功能的开发或修改。

  3. 将新分支推送到远程仓库:

    使用 git push 命令将新创建的分支推送到远程仓库。如果远程仓库中还不存在该分支,可以使用 -u 选项将本地分支与远程分支关联起来。假设远程仓库名为 origin,可以使用以下命令:

    git push -u origin new-feature
    

    这将把名为 new-feature 的新分支推送到远程仓库,并与远程仓库的同名分支关联起来。

设置上游分支

  1. 首先,打开命令行或终端窗口,进入你想要设置上游分支的本地仓库目录。

  2. 使用以下命令将远程仓库添加为上游分支:

git remote add upstream <远程仓库URL>
  1. 使用以下命令来验证上游分支是否设置成功:
git remote -v

这个命令会列出所有与本地仓库相关联的远程仓库,包括上游分支。

  1. 如果你希望从上游分支获取更新,可以使用以下命令:
git fetch upstream

这个命令会从上游分支获取最新的提交。

  1. 如果你想要将上游分支合并到你的本地分支中,可以使用以下命令:
git merge upstream/<分支名>

这里的<分支名>是指上游分支的具体名称,例如main、master等。

查找提交日志

git log --grep='xxx'

转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 1430797759@qq.com

文章标题:Git使用说明

字数:1.6k

本文作者:花落阁

发布时间:2023-04-14, 14:57:56

最后更新:2024-04-26, 14:44:22

原始链接:https://hualog.dns.navy/2023/04/14/Git%E4%BD%BF%E7%94%A8%E8%AF%B4%E6%98%8E/

版权声明: "署名-非商用-相同方式共享 4.0" 转载请保留原文链接及作者。