一、安装Git及其辅助工具
1.1.代码版本管理工具 - git
推荐笔记: Git 详细安装教程(详解 Git 安装过程的每一个步骤)
推荐笔记: 廖雪峰-Git教程
指令集: https://ndpsoftware.com/git-cheatsheet.html
图解指令: https://rogerdudler.github.io/git-guide/index.zh.html
git
除了注意安装路径根据需要修改外, 建议所有东西一律按照默认一路下一步!!!- 注意!
git
和github
不是一个东西,git
才是代码管理工具,github
只是一个提供git服务
的平台.
- 很多教程都是建议使用指令学习
git
,我认为非也,先学会怎么用,养成git
思维后再回头了解会更容易. - 特别
git
指令多,版本多,可能会出现同一个功能有多个指令可以实现,每个教程的说法理解不一致时,让人头大.
1.2.可视化git指令工具 - SourceTree
推荐笔记: Git GUI工具:SourceTree代码管理
- 我这里推荐使用
SourceTree
软件,可以轻量级,免费好用有中文,而且会显示git
指令,事后可以反推学习 SourceTree
软件安装过程也是一路点击下一步所有东西默认,开头有个注册要求,点击跳过,中途有个下载请求可能会失败,无视即可.
1.3.文本对比合并工具 - Beyond Compare (收费)
推荐科普: Beyond Compare:高效文件与文件夹比较工具使用指南
还可以作为文本编辑器
- 建议
Beyond Compare
软件,专业的对比工具,功能超级多.轻量级,安装快,一路下一步即可! - 注意!
git
的代码管理理念是基于修改对比合并
, 它是对比修改前后的区别,如何记录修改了什么,而不是记录文件本身,(个人理解)所以git
的空间利用率很高,不会因为修改一个标点符号就备份一次工程代码~ - 而且这个理念也是直观反应了程序员进行维护管理的初衷,因为每次版本更新都是基于前一次修改而来,而不会重复造轮子!
程序员思维的浪漫,是刻到骨子里的. - 因此还需要一个代码对比软件,
git
和SourceTree
自带的对比功能相当轻量级, 如果加载大量文件的话难免力不从心(相当卡顿!)
1.3.文本对比合并工具 - KDiff3
推荐笔记:kdiff3官方版本
官方网站:https://kdiff3.sourceforge.net/
下载地址:https://download.kde.org/stable/kdiff3/
下列哪个软件是免费开源的, 我需要一个代码对比工具:
- SystemDefault
- AraxlsMerge
- BeyondCompare
- KDiff3
- P4Merge
- TortoiseMerge
- WinMerge
在列出的选项中,以下是免费且开源的代码/文件对比工具:
-
KDiff3
- 开源许可证:GPL
- 支持多平台(Windows/Linux/macOS),擅长三向合并,适合代码合并冲突解决。
-
WinMerge
- 开源许可证:GPL
- 仅限Windows,直观的界面,支持文件夹和文件对比,适合日常差异检查。
-
TortoiseMerge
- 开源许可证:GPL
- 作为TortoiseSVN/TortoiseGit的组件,适合版本控制用户,界面简单。
-
P4Merge
- 免费(非完全开源)
- Perforce提供的工具,支持基本对比和合并功能,界面清爽。
其他说明:
- Beyond Compare:功能强大但需付费(非开源)。
- Araxis Merge:商业软件(付费且闭源)。
- SystemDefault:Sourcetree系统自带工具,功能有限。
- VS Code:使用自带的Git对比工具,或是安装插件。
推荐选择:
- 优先开源:选 KDiff3 或 WinMerge(尤其Windows用户)。
- 版本控制集成:选 TortoiseMerge。
- 简易免费:选 P4Merge(尽管不开源,但免费)。
1.4.git服务平台 - gogs
推荐笔记: 什么是 Gogs?
推荐笔记: 如何使用Gogs搭建自己的git服务器
推荐笔记: Gogs安装和部署教程-centos上
- 类似
github
, 需要一个能配合本地git
的服务端 - 这里推荐
gogs
平台,超级轻量级,只需要到下载源码,如何在终端里运行即可,
如果对此没有概念,可以看看我之前关于搭建web的科普教程: 基于Node.js与WebSocket搭建服务器 虽然不是一个概念,但有助于理解使用.
- 只需要再同一个局域网下连接即可,注意简单的终端指令,实际是调用脚本运行,建议输入全脚本路径和后缀
./gogs web # 第一次
./gogs start # 启动
./gogs stop # 关闭
1.5.小结
- 目前你就拥有了四个工具了:
git
本体- 调用
git
指令 的 软件 - 对比
git
提交 的 编辑器 - 提供
git
服务 的 云平台
- 重要概念: 储存, 暂存, 提交, 分支, 合并, 变基, 推送, 拉取
1.6.补充 VS Code
- 我发现
vscode
自带的git
工具也挺好用的,但是自带了基本的快捷操作,而且支持文件对比。不用非得用破解版软件。
二、上传云端
2.1.GitCode
这里就拿 优快云 绑定的 GitCode 作例子。
- 修改本地用户名和邮箱
根据提示修改内容
- 修改云端名称和路径
根据提示修改内容
- 获取访问令牌
直接上传,在弹窗内输入账户密码却失败了,会提示以下内容。
git -c diff.mnemonicprefix=false -c core.quotepath=false --no-optional-locks push -v --tags --set-upstream origin main:main
remote: <CH.00905401> HTTP Basic: Access denied.
remote: The password-based authentication of Git has been removed. Please use your personal access token instead of the password. Request-id is laXqicTnEX.
fatal: Authentication failed for 'https://gitcode.com/Lovely_him/esp32s3_component_test.git/'
Pushing to https://gitcode.com/Lovely_him/esp32s3_component_test.git
完成时带有错误,见上文。
- 这个错误信息表明你在使用
Git
推送时遇到了认证问题。错误的核心是Git
服务器不再接受密码认证,要求你使用个人访问令牌(Personal Access Token, PAT
)进行认证。 - 这表示
Git
服务器(gitcode.com
)已禁用基于密码的认证,要求使用个人访问令牌代替。- 下次推送时,
Git
会提示输入用户名和密码:- 用户名:你的
gitcode.com
用户名 - 密码:使用创建的
PAT
而不是账户密码
- 用户名:你的
- 下次推送时,
- 在个人中心这里,创建一个新令牌即可。下次弹窗输入的不是密码,而是这个令牌。
- 成功后就能看到云端有仓库了,和使用本地的 gogs 类似。
- 注意的是,这个令牌是只显示一次的.如果忘记保存就重新弄一个吧.
2.2. windows凭据
- 可能会出现需要更换账户的清空,上传同一个平台,但是换了一个账户,
- 到
win
系统的控制面板
-凭据管理器
-windows凭据
中删除或修改填写过的账户密码。
2.3.Github
- 待补充