git基本使用

下载与安装

Git - 下载 - Git 版本控制系统

Git下载及安装保姆级教程(内附快速下载方法)-CSDN博客

查询自己用户名和邮箱

复制代码
git config --global user.name
git config --global user.email

设置自己用户名和邮箱

复制代码
git config --global user.name "你的名字"
git config --global user.email "你的邮箱"

生成SSH Key

复制代码
ssh-keygen -t rsa -C "youremail@example.com"

去如下目录去找你生成的文件

复制代码
C:\Users\heaboy\.ssh

就是在用户目录下

复制代码
/root/.ssh

heaboy 以及root均为用户名

主要是要找.ssh文件夹

并且生成的时候也会给出我们存储的路径。

下面这步是将本地新建仓库默认分支名改为 main

git 复制代码
git config --global init.defaultBranch main

原因是当前代码托管平台如gitee,默认主分支就叫main,而不是之前的master,本地git默认分支名是master,推送时如果不显式指定目标分支,就会推送给master。

可以不改。用作提醒

创建远程仓库

先在gitee创建一个远程仓库

查看仓库是否生成成功

新建一个本地文件夹作为本地仓库并把我们新建好的文件夹初始化成本地仓库

这个文件夹一般就是你的项目根目录

第一步:

第二步:

在命令行里输入git init

结果:

作为本地仓库的目录里生成了一个.git文件夹(windows隐藏了,打开),里面放了本地仓库的配置,把它删了本地仓库就没了,然后就能重新生成新的本地仓库

初始化本地仓库后返回gitee拿到远程仓库访问路径

关联本地仓库和远程仓库

git 复制代码
git remote add origin <远程仓库URL>

origin指给这个远程仓库起的本地名字 (约定俗成叫 origin

然后需要先将远程仓库的分支和本地进行合并,为以后提交做准备

复制代码
git pull origin main

main代表远程仓库分支名,一般默认分支main

把代码添加进暂存区

复制代码
 git add .

可能会报

复制代码
warning: in the working copy of 'xxx', LF will be replaced by CRLF the next time Git touches it

Git 的换行符自动转换机制(autocrlf) 在起作用,不是错误,通常也不影响代码功能,但了解它能避免潜在问题。

  • LF(\n):Unix/Linux/macOS 使用的换行符。
  • CRLF(\r\n):Windows 使用的换行符。

但是如果不是文本文件提示这种就会出问题

然后提交到本地仓库

复制代码
git commit -m '此次提交描述'

把代码从本地仓库推送到远程仓库

复制代码
git push origin master

master指本地默认开发分支,origin指默认远程版本库,其中master名字与上传远程库的分支名相同,比如你上传master,那么远程库也会叫master分支,但是如gitee默认主分支是main,所以可以

复制代码
git push origin master:main
或干脆把本地分支名改成main

常用操作

merge 和 rebase 最大的区别在于是否会保留原有的提交(或者说破坏原有的提交结构)。

merge 会对提交历史进行保留,很显然更适合多人协作开发的场景 ,因为如果出现问题也可以追溯到历史的每一次提交。

rebase 则是会让提交历史更加简洁易读,保持提交历史的线性结构,所以更适合个人开发和整理分支的情况 。rebase 并不会保留原有的提交,而是会创建当前分支比目标分支更新的所有提交的副本

所以,main 分支是万万不能使用 rebase 的!!!

相关推荐
freepopo15 分钟前
比较好的别墅装修策略
大数据
程序员果子1 小时前
Git从零到远程协作:手把手实战指南
git
实战产品说5 小时前
2026出海产品的机会与挑战
大数据·人工智能·产品运营·产品经理
猫头虎5 小时前
OpenClaw 常用操作命令完整速查手册:终端 CLI 操作指令详解|聊天斜杠指令详情
运维·git·容器·开源·github·aigc·ai编程
2501_926978335 小时前
从Prompt的“结构-参数”到多AI的“协作-分工”--底层逻辑的同构分化
大数据·人工智能·机器学习
教男朋友学大模型5 小时前
平衡AI自动化与人工干预
大数据·人工智能·自动化
渣瓦攻城狮6 小时前
互联网大厂Java面试实战:核心技术与场景分析
java·大数据·redis·spring·微服务·面试·技术分享
Q鑫7 小时前
Elastricsearch部署详解
运维·elasticsearch
Elastic 中国社区官方博客7 小时前
Elasticsearch:通过最小分数确保语义精度
大数据·数据库·人工智能·elasticsearch·搜索引擎·ai·全文检索
狮子座明仔7 小时前
DeepImageSearch:当图像检索需要“侦探式推理“,现有AI还差多远?
大数据·人工智能·语言模型