Git安装#
首先cmd打开终端输入
1where git判断一下系统有无安装git
没有的话去官网安装即可
Redirecting…
安装过程还挺麻烦的
可以一步步问AI该选择哪些选项……
网站选择#
首选Github
也可以先用国内的Gitee练手
仓库创建#
以下操作在github/gitee内进行.
- 初始化仓库:
(1)选择语言:
按需或不选,主要是给仓库打上一个“主要编程语言”的标签
(2)添加.gitigore:
一般推荐添加,用于告诉git哪些文件不需要管理
(3)添加开源许可证:
一般选择
MIT-license(开源) (以上内容后期应该都是可以再添加的,可以先不选) - 设置模板:
(1)
readme文件: 仓库的门面和说明书,按需选择,后期可再添加 (2)issue模板文件: 便于别人给你的仓库提交bug或功能建议 (3)pull request模板文件: 当别人想为你贡献代码时用这个模板来请求 - 选择模型分支: 可以先默认选择“main”或“master”分支
本地文件上传#
本地已有仓库 将其上传github 利于备份和版本管理;
适合个人项目;
即先本地建立文件 再上传; 不过一般是先创建仓库再clone到本地进行开发; 注:选择本地已有的文件上传时 新建仓库不要勾选readme和license 因为会导致仓库和本地的初始化内容不统一; 如果已经勾选了 建议之后使用强制推送,使用本地内容覆盖仓库;
1#首先在github新建仓库
2#再在文件资源管理器中进入所需上传的文件
3#然后右键文件空余处,点击在终端中打开
4#然后确保终端中显示的目录就是当前想要上传的文件,then:
5git init
6#个人开发者的话可以用global全局设置 即所有项目用同一个身份
7git config user.name "你的用户名"
8git config user.email "你的邮箱@example.com"
9#以下具体内容在gitee中复制即可
10git remote add origin https://gitee.com/你的用户名/仓库名.git
11#上传
12git add .
13git commit -m "初始提交:上传项目文件"
14git push -u origin master -f #"强制推送(只在个人仓库初始化时使用)"
15#注意,上传github最好别用master分支,要用main
16#git push --force-with-lease适合多人开发时使用,防止覆盖他人提交push前最好git branch查看当前所在分支以及所有本地分支,避免推送到其他分支上,当前所在分支会在前面显示*符号
如果分支不匹配,用git branch -M main移动到正确分支上
关于获取自己github邮箱:
点击头像->settings->email;
后续在本地编辑更新完项目后 再更新上传到git:
1git add .
2git commit -m "更新内容给介绍"
3git push后期git配置状态检查:
1git config --list
2#或者
3git config --global --list同步本地和仓库#
首先进入本地对应文件 在此打开终端:
1git fetch origin#获取远程最新状态(安全,不合并本地文件)
2git status#查看本地与远程差异
3git diff#查看具体文件内容差异git status后的几种可能状态:
up to date with 'origin/master'—已同步,无需操作behind 'origin/master' by X commit—本地落后,执行git pullahead of 'origin/master' by X commit—本地领先,执行git push
GitCommit优化#
通常每次
git commit只能有一个提交信息,这个信息会附加到整个提交上,而不是单个文件夹或文件上,以下尝试优化
推荐办法: 每次想要提交前,先
git status;(也可结合git diff) 查看当前哪些文件需要被提交; 然后依次:1git add filename1/ 2git commmit -m "该文件的修改内容" 3git add filename2/ 4git commit -m "该文件修改内容" 5#最后统一进行git push 6git push origin 7#这样就能在github上看到对每个文件不同的提交信息了
.Gitignore#
被gitignore的文件,在本地依然会随着修改而变化,但每次提交不会被上传到github,即只在本地变化;
- 创建
.gitignore文件: 在根目录右键新建文本文件-将整个文件重命名为.gitignore(后缀也要一起删掉!) 在文件内写入需要忽略的文件的路径,比如.obsidian/workspace.json,这样该文件就会被忽略,不会被同步到仓库;
检查:
1#输入
2ls .gitignore*
3#理想输出类似
4Mode LastWriteTime Length Name
5---- ------------- ------ ----
6-a---- 2026/4/18 13:36 109 .gitignore
7#若输出文件名显示".gitignore.txt" 那是不正确的- 使用
.gitignore: 先提交更新后的.gitignore文件至github; 然后通过git status检查是否有已经被GIT跟踪但是需要ignore的文件;
⚠️.gitignore 只能忽略未被跟踪的文件,如果文件已经被 Git 跟踪过,需要先 git rm --cached 再忽略;
所以如果有,通过git rm --cached config/secret.json让git忽略这个文文件,之后就可以正常add-commit-push了;
Git多分支page部署#
添加.github/workflow/deploy/yml文件(创建github Actions)
修改仓库page部署分支为gh-pages
多平台同步#
首先进入本地需要同步的文件夹,右键在终端中打开; (后续操作均需在此环境下进行)
1git remote -v#查看当前文件夹关联的所有远程仓库需要将同一本地文件同步到不同远程仓库时,建议使用相同的仓库名(仓库名即为-v后显示的“仓库名.git”)在平台先建立相同名称的仓库,不要设置readme等文件; 以下以已经同步到gitee的文件,再同步到github为例:
1git remote add github https://github.com/用户名/仓库名.git然后根据分支名推送:
1git push github master最后再用git remote -v检查一下,应该会多出origin之外的仓库;
1git add .
2git commit -m "内容"
3git push origin master#第一个一般都为origin吧
4git push github master后期若要定期检查本地和两个仓库同步状态:
1git status#仅用来检查本地和origin的同步状态
1git fetch --all#用来检查三方是否都正确同步,以下一步步执行
2git log --oneline HEAD#本地最新提交
3git log --oneline origin/master#gitee最新提交
4git log --oneline github/master#github最新提交



details#
- GIT REMOTE
若在github上
rename了仓库名称下一次在本地git add-commit-push之前记得先检查git remote -v,应该还是旧仓库的地址.因此推荐先配置git remote set-url origin YOUR_NEW_URL.git后再提交代码;
Wrong1#
wrong:
由于在gitee上给仓库添加了license文件;
此时仓库有license文件 但本地并没有;
and 我并未记得;
直接更新了新的本地内容;
于是乎:
在进行git push时出现报错;
处理方法:
1git pull origin master#拉取远程仓库的变化更新文件,并合并到本地此时终端可能会进入另一个界面,叫做"vim编辑器";
此时要先按一下Esc键,再输入:wq,最后按一下Enter 应该就会恢复正常了;
最后再输入:
1git push origin master
2#或者这里直接用git push更好