Hexo

凡事预则立,不预则废


  • Home

  • Tags

  • Archives

  • Navigation

  • Search

Git——Git环境配置


安装 Git

  • 可以命令行安装,也可以从 Git 的官方网站(https://git-scm.com/downloads)下载安装程序,然后按照安装向导的提示完成安装
    1
    git --version

配置用户名和邮箱

  • Git 在提交代码时会使用这些信息来标识提交者

  • 执行以下命令来设置用户名和邮箱:

    1
    2
    git config --global user.name "你的用户名"
    git config --global user.email "你的邮箱地址"
  • 这里使用的--global参数表示这是全局配置,在这台计算机上进行的所有Git操作都会使用这些信息

  • 如果你想为某个特定的项目设置不同的用户名和邮箱,可以在该项目的根目录下执行相同的命令 ,但不使用--global参数


查看配置信息

  • 可以通过以下命令来查看当前的 Git 配置信息:

    1
    git config --list
  • 执行该命令后,终端会列出所有的Git配置项,你可以从中找到user.name和user.email,确认它们是否是你刚刚设置的内容


SSH 配置

  • 查看 SSH 秘钥

    1
    ls -al ~/.ssh
    • 若存在,会看到类似 id_rsa.pub 或 id_ed25519.pub 的文件(.pub 为公钥,无后缀为私钥)
  • 若无秘钥,需先生成秘钥

    1
    ssh-keygen -t ed25519 -C "your_email@example.com"
    • -t ed25519:使用更安全的 Ed25519 算法(推荐使用)

附录:配置文件位置

  • Git 的配置信息存储在不同的文件中,具体取决于配置的范围:
    • 全局配置 :存储在用户主目录下的.gitconfig文件中
    • 项目配置 :存储在项目根目录下的.git/config文件中

Git——GitHub开源协议


整体说明

  • GitHub上有许多开源协议,本文总结常见的开源协议及其含义

MIT License

  • 极宽松,允许自由使用、修改和分发,只需保留版权声明。无担保,作者不承担责任
  • 适用场景:适合个人项目或希望代码广泛传播的场景
  • 个人开发者常使用的协议

Apache License 2.0

  • 允许商业使用、修改和分发,需保留版权和许可证
  • 特殊条款 :专利授权,明示禁止商标使用
  • 适用场景:企业项目,需明确专利授权
  • 目前的大模型大多使用的这个协议

GNU GPL v3

  • 强Copyleft,修改和分发需开源且保持相同许可证。衍生作品必须开源,商业分发需提供源代码
  • 适用场景:确保代码及其衍生版本永远开源

GNU LGPL v3

  • 弱Copyleft,允许闭源软件通过库引用方式使用。修改LGPL库本身需开源
  • 适用场景:开发开源库,允许闭源应用调用

BSD 2-Clause “Simplified” License

  • 允许自由使用和修改,禁止用作者名义推广。需保留版权声明
  • 适用场景:类似MIT,但限制稍多

BSD 3-Clause “New” License

  • 在2-Clause基础上增加禁止使用作者商标的条款
  • 适用场景:需明确商标保护的项目

Mozilla Public License 2.0 (MPL 2.0)

  • 部分Copyleft,修改文件需开源,未修改部分可闭源
  • 适用场景:适合混合开源/闭源的组件化项目

Creative Commons Licenses

  • CC0 :放弃版权,进入公有领域
  • BY :允许商用,但需署名
  • NC :禁止商业使用
  • 适用场景:非软件类作品(如文档、设计)

Unlicense

  • 放弃所有版权,代码进入公有领域
  • 适用场景:完全开放的公共项目

选择建议

  • 希望代码广泛传播: MIT/Apache
  • 确保衍生作品开源: GPL
  • 开发开源库: LGPL
  • 非软件作品: CC系列
1…251252253…352
San Ye

San Ye

Stay Hungry. Stay Foolish.

704 posts
53 tags
© 2026 San Ye
Powered by Hexo
|
Theme — NexT.Gemini v5.1.4