git常用配置

全局配置

要在 Git 中进行全局配置,可以使用以下命令来设置用户名和邮箱:

复制代码
git config --global user.name "Your Name"
git config --global user.email "[email protected]"

你还可以设置其他全局配置选项,比如设置默认分支名、合并工具等。以下是一些常用的全局配置选项:

  • 设置默认分支名:

    git config --global init.defaultBranch main

将 "main" 替换为你想要设置的默认分支名。

  • 设置合并工具为 vimdiff:

    git config --global merge.tool vimdiff

你也可以选择其他的合并工具,比如 vim、emacs 等。

git代理设置

git config --global http.https://github.com.proxy socks5://127.0.0.1:7890

连接远程仓库

查看远程仓库 git remote -v

取消与远程仓库连接 git remote remove origin

初始化仓库 git init

git add .

git commit -m "提交"

git remote add origin "new repo address"

先拉取远程仓库 git pull --rebase origin master

git push -u origin master

sshkey生成

在 MacOS 上生成 SSH 密钥对,可以按照以下步骤进行操作:

  1. 打开终端:在 Launchpad 中找到 "终端" 应用程序,双击打开。

  2. 在终端中执行以下命令,创建 SSH 密钥:

    ssh-keygen -t rsa -b 4096 -C "[email protected]"

请将上述命令中的 "[email protected]" 替换为你自己的电子邮件地址。

  1. 终端会提示你选择存储密钥的文件路径,默认情况下,会存储在 ~/.ssh/id_rsa。按回车键接受默认路径。

  2. 终端会提示你设置密钥的密码。可以选择设置密码来保护你的私钥,也可以直接按回车键跳过设置。

  3. SSH 密钥对已成功创建。终端会显示密钥的路径和指纹信息。

  4. 在终端中执行以下命令,打开公钥文件,并将其内容复制到剪贴板:

    pbcopy < ~/.ssh/id_rsa.pub

  5. 将公钥粘贴到你的 Git 托管平台(如 GitHub、GitLab 等)的 SSH 密钥设置中。登录到你的 Git 托管平台,找到设置中的 "SSH and GPG keys" 或类似的选项,将公钥粘贴到相应的字段中。

现在你已成功生成了 SSH 密钥对,并将公钥配置到你的 Git 托管平台中。

git merge和 git rebase

git mergegit rebase 是 Git 中用于合并分支的两种不同方法。

  • git merge: 这是将一个分支的更改合并到另一个分支的常见方法。当你执行 git merge <branch> 时,Git 会将 <branch> 分支的提交内容合并到当前分支,创建一个新的合并提交。合并提交包含了两个分支的共同祖先以及各自的提交内容。

    优点:

    • 保留了每个分支的完整历史记录。
    • 不会改变原始提交的顺序。

    缺点:

    • 合并提交会创建额外的合并提交记录,可能会导致历史记录看起来比较杂乱。

    示例如下:

    复制代码
    git checkout main
    git merge feature
  • git rebase: 这是将一个分支的更改应用到另一个分支上的另一种方法。当你执行 git rebase <branch> 时,Git 会找到当前分支和 <branch> 分支的分叉点,并将当前分支上的提交逐个应用到 <branch> 分支上,形成一个线性的提交历史。

    优点:

    • 提交历史线性清晰,没有合并提交。
    • 可以将分支的修改整理成更干净、易于理解的提交。

    缺点:

    • 可能会修改原始提交的顺序,导致提交历史看起来不一致。
    • 如果在多人协作的环境中使用,可能需要谨慎使用,以免修改他人的提交。

    示例如下:

    复制代码
    git checkout feature
    git rebase main

选择 git merge 还是 git rebase 取决于你的工作流和项目需求。一般来说,如果你想保留完整的分支历史记录并进行合并,使用 git merge 是较好的选择。而如果你想要一个干净的、线性的提交历史,可以考虑使用 git rebase

相关推荐
Elastic 中国社区官方博客32 分钟前
连接关键点:使用 ES|QL 联接实现更丰富的可观测性洞察
大数据·数据库·sql·elasticsearch·搜索引擎·全文检索
蚂蚁数据AntData36 分钟前
⼤模型驱动的DeepInsight Copilot在蚂蚁的技术实践
大数据·人工智能·数据分析·copilot·数据库架构
TDengine (老段)2 小时前
TDengine 的 AI 应用实战——运维异常检测
大数据·数据库·人工智能·物联网·时序数据库·tdengine·涛思数据
MyikJ3 小时前
Java面试实战:从Spring Boot到微服务与AI的全栈挑战
java·大数据·spring boot·微服务·ai·面试·架构设计
weixin_307779134 小时前
使用Redis作为缓存优化ElasticSearch读写性能
redis·分布式·elasticsearch·缓存·架构
Xiao Ling.4 小时前
Elasticsearch
elasticsearch
德育处主任4 小时前
聚沙成塔,三步成书:GitBook极简入门教程
前端·git·电子书
AI设计小站4 小时前
AI 赋能名片设计:告别模板化,创造独特视觉风格
大数据·人工智能·设计规范
m0_635647484 小时前
git管理github上的repository
git·github
fanTuanye5 小时前
JavaWeb是什么?总结一下JavaWeb的体系
java·大数据·javaweb·基础·体系