2026.1.13 周二
Git(分布式版本控制系统)
1.仓库(Repository)
用来存储项目所有版本信息的"数据库",分为
*本地仓库:存在你电脑上的.git隐藏文件夹(包含完整的版本历史)
*远程仓库:托管在网络服务器上(如 GitHub、GitLab、Gitee),用于团队共享代码
2.提交(Commit)
Git 中最基本的操作之一:将当前工作区的修改"固化"为一个版本快照 ,并附带一条描述信息(说明这次修改做了什么)。每个 Commit 有唯一 ID(哈希值,如 a1b2c3d),可追溯;提交历史是一条链,可通过 Commit ID 回溯到任意版本。
3.分支(Branch)
从主线(默认叫main/master)分离出的独立开发线。并行开发不同功能。
*分支切换:可随时切换到不同的分支,修改不会相互影响。
*分支合并:开发完成后,将分支的修改合并回主线。
4.暂存区(Staging Area)
介于"工作区"和"本地仓库"之间的缓冲区域。作用是可以精准控制提交内容---只把需要的修改放入暂存区,在提交到仓库,避免无关修改混入版本历史。
*工作区:你正在编辑的文件
*暂存区:临时存放"准备提交"的修改(通过 git add将工作区修改加入暂存区)

5.远程协作
克隆(Clone)
将远程仓库完整复制到本地(git clone 远程地址)
拉取(Pull)
从远程仓库获取最新修改并合并到本地(git pull = git fetch + git merge)
推送(Push)
将本地仓库的修改上传到远程仓库(git push)
抓取(Fetch)
仅从远程获取最新修改(不自动合并,需手动处理冲突)
6.基本工作流程
1.克隆 / 初始化仓库
克隆远程:git clone 地址
初始化本地: git init(将现有文件夹转换为git 仓库)
2.修改文件
在工作区编辑代码
3.暂存修改
将需要提交的修改加入暂存区
git add <文件名> # 暂存单个文件
git add . # 暂存所有修改(常用)
4.提交修改
将暂存区的内容固化为版本
git commit -m "feat: 添加用户登录接口" # -m 后接提交描述(必填)
5.同步远程
-
拉取远程最新修改:
git pull(避免冲突) -
推送本地提交到远程:
git push origin main(假设主分支是main)
7.常用命令
git init 初始化本地仓库
git clone <url> 克隆远程仓库到本地
git statu 查看工作区和暂存区的状态(哪些文件被修改/未暂存)
git add <file> 将文件加入暂存区
git commit -m "msg" 提交暂存区到本地仓库
git log 查看提交历史
git branch 查看所有本地分支(*表示当前分支)
git checkout -b <branch> 创建并切换到新分支
git merge <branch> 将指定分支合并到当前分支
git pull 拉取远程更新并合并
git push 推送本地提交到远程
git reset <commit>回退到指定 Commit(谨慎使用,会修改历史)
8.具体操作
配置用户信息
git config --global user.name "Your Name"
git config --global user.email "email@example.com"
1.GitLab中,点击左侧的Project选项,找到 SSH,复制 eg:git@github.com:用户名/项目名.git
2.先创建一个project文件夹,在终端中cd project/ 到这个文件夹下面,git clone +你复制ssh上面的东西(把网上的代码仓库整个复制 到你的电脑,这样你的 project/文件夹里会有代码文件了)
- 配置用户名和邮箱git config --global user.name "Your Name" git config --global user.email "your_email@example.com"(告诉 Git 你是谁(就像署名),这样你修改代码后,别人知道是谁改的)
- ssh-keygen -t rsa -b 4096生成SSH密钥(私钥id_rsa:保存在你的电脑上,绝不外传;公钥id_rsa.pub:上传到GitHub/GitLab)
- 把公钥内容粘贴到 GitHub/GitLab 设置里,这样网站就认识你的电脑了,以后不用每次输密码
- 点击右上角头像 -> 【Settings】(设置) -> 侧边栏 【SSH Keys】 。
- 将 id_rsa.pub 文件的内容全部复制,粘贴到"Key"文本框中。
- 点击 【Add key】 添加。
9.alias 别名
如何配置别名
编辑 ~/.bashrc 或 ~/.bash_profile
nano ~/.bashrc
或者
vim ~/.bashrc
将下面的别名配置粘贴到文件末尾
保存后运行
source ~/.bashrc
(1)git操作别名
alias gs='git status' - 查看仓库状态
alias ga='git add' - 添加文件到暂存区
alias gd='git diff' - 查看文件差异
alias gb='git branch -v' - 查看分支详情(带最后提交信息)
alias gcm='git commit -m' - 提交并填写提交信息
alias gam='git commit --amend' - 修改最后一次提交
alias gck='git checkout' - 切换分支或恢复文件
alias gcp='git cherry-pick' - 挑选提交
alias gp='git push' - 推送到远程
alias gpf='git push -f' - 强制推送(谨慎使用)
alias gplm='git pull origin master' - 从 origin/master 拉取
alias gpo='git pull origin ' - 从指定分支拉取
(2)项目管理别名
alias start='pnpm start'
alias dev='pnpm run dev'
alias pi='pnpm install'
alias pj="cd ~/project"·
alias std="cd ~/study"
是一组非常实用的 Shell 别名(Shell Alias)配置,主要用于命令行操作的快捷方式。这些别名让你可以输入简短的命令来代替长而复杂的完整命令,大幅提高在终端中的工作效率。
cat ~/.ssh/id_rsa.pub 查看ssh密钥
gck ai-photo-v1.3切换分支
git pull origin ai-photo-v1.3从上面拉代码
gck -b ai-photo-v1.3-follow从上面创建一个新分支
git log查看日志