Git 常用操作技术文章大纲
基本概念
- Git 简介:分布式版本控制系统
- 工作区、暂存区、仓库的概念
- 分支与合并的基本逻辑
初始化与配置
- 安装 Git 并检查版本
git --version
- 全局配置用户名和邮箱
git config --global user.name "Your Name" git config --global user.email "your.email@example.com"
基础操作
- 初始化新仓库
git init
- 克隆远程仓库
git clone <repository-url>
- 查看当前状态
git status
- 添加文件到暂存区
git add <file-name> git add . # 添加所有更改
- 提交更改到本地仓库
git commit -m "commit message"
分支管理
- 创建新分支
git branch <branch-name>
- 切换分支
git checkout <branch-name>
- 创建并切换分支(一步完成)
git checkout -b <branch-name>
- 查看所有分支
git branch -a
- 合并分支
git merge <branch-name>
- 删除分支
git branch -d <branch-name> # 删除本地分支 git push origin --delete <branch-name> # 删除远程分支
远程仓库操作
- 关联远程仓库
git remote add origin <repository-url>
- 推送本地分支到远程
git push -u origin <branch-name>
- 拉取远程更新
git pull origin <branch-name>
- 查看远程仓库信息
git remote -v
撤销与回退
- 撤销工作区的修改
git checkout -- <file-name>
- 取消暂存区的修改
git reset HEAD <file-name>
- 回退到某次提交
git reset --hard <commit-hash>
- 查看提交日志
git log
标签管理
- 创建标签
git tag <tag-name>
- 查看所有标签
git tag
- 推送标签到远程
git push origin <tag-name>
常见问题与最佳实践
- 处理冲突的方法
.gitignore
文件的使用- 使用
git stash
暂存未提交的更改 - 使用
rebase
优化提交历史
总结
- Git 的核心操作流程
- 推荐的学习资源(官方文档、教程等)
git clone http://**** gitlob/gitee选择已有的项目首页,右侧的克隆按钮,点击选择使用HTTP克隆,复制下方的http://开头的路径,在本地文件夹中cmd,运行git clone <粘贴复制的路径>,然后回车
git init 给当前文件夹中初始化git,会在当前文件夹中生成.git文件。开发中不需要管,只是会在你操作git时记录你的相关操作以及信息
git status 查看当前分支变更代码
git pull 拉取本地分支对应的远程变更
git pull --all 拉取本地仓库所有分支最新变更代码
git branch 查看本地仓库分支列表
git branch -vv 查看本地仓库分支与远程仓库分支对应的关系
git branch -r 查看远程仓库分支列表
git checkout dev 切换已有的本地dev分支,如果没有dev,则失败
git stash 本地仓库修改代码后,想要提交远程仓库,需要先git stash将本地修改移除,然后git pull拉取当前分支远程仓库的最新log,然后 git stash pop,将本地修改移除的代码重新移入
git stash pop 移入之前移出的本地仓库修改
git push 推送本地分支修改到远程仓库对应仓库
git push origin dev 将本地dev分支修改推送到远程仓库dev分支(推送前如果远程仓库有dev分支)
git push -u1 dev origin/dev 推送本地dev分支到远程(推送前如果远程仓库没有dev分支加上 -u)
git reset HEAD~ 撤销本地仓库上一次commit
git checkout -b dev origin/dev 本地仓库没有dev分支时,拉取远程仓库已有的dev分支(与远程仓库dev分支关联,且不以本地master为基)
git checkout -b dev 本地仓库没有dev分支时,以master为基础,创建本地dev分支
项目开始需要的操作:
- 远程仓库已有项目文件时
// 克隆远程仓库项目到本地(拉取的分支默认为主分支master)
git clone http://...
// 基于master分支创建dev分支并切换到dev分支,在dev分支上进行开发
git checkout -b dev // 如果远程仓库没有dev分支
git checkout -b dev origin/dev // 如果远程仓库有dev分支,需要以远程的dev分支为基础进行开发
// 查看当前所在分支和分支列表,确保当前分支没问题
git branch
// npm安装依赖
npm i
// 运行项目
npm run dev
// 进行开发
// --- 如果独立开发,可以忽略以下操作 ---
git stash开发完毕后,先移出变更
git pull 拉取当前分支最新代码
git stash pop 移入变更代码
// ---
// 推送变更到暂存区
git add .
// 提交到仓库区
git commit -m '添加首页功能'
// 推送到远程仓库
git push -u dev origin/dev // 如果远程仓库没有dev分支
git push origin dev // 如果远程仓库有dev分支
- 远程仓库没有项目文件时
-u 相当于 --set-upstream
↩︎