Git笔记

本文详细记录了Git的学习过程,包括本地库的工作区、暂存区和版本库的概念及操作,如提交、回退。还介绍了如何关联远程库、推送内容、克隆和删除远程库文件。此外,重点讲解了分支管理,如创建、合并、解决冲突,以及多人协作中的git命令使用。
摘要由CSDN通过智能技术生成

本文针对本人学习git的过程进行记录,并非总结型笔记,只是针对使用过程中常用且重要的操作予以记录,以便日后进行查看。

Git

本地库

1 工作区/暂存区/版本库
  • 关系如下
2 nameemail
// 设置用户名与用户邮箱
git config --global user.name "zhoujl"
git config --global user.email "zhoujl@mbp.local"
// 查看用户名与用户邮箱
git config user.name
git config user.email
3 提交项目的基本操作
  • 基本操作
// 创建版本库
git init
// 提交暂存区
git add README.md
// 提交版本库
git commit -m "add README.md"
4 几种回退方式
  • 版本回退(连同暂存区和工作区一起更新)
// 回退一个版本
git reset --hard HEAD^
// 回退多个版本
git reset --hard HEAD~100
// 恢复新版本
git reflog	// 查看历史命令记录
git reset --hard (版本id)
  • 文件回退
// 从暂存区回退(修改工作区)
git checkout -- README.md
// 从版本库回退(仅修改暂存区)
git reset --hard HEAD README.md

远程库

1 关联本地库
git remote add origin git@github.com:ZhouJialiang48/learn_git.git
2 推送内容
// -u: 自动关联本地与远程库的master分支
git push -u origin master
3 克隆到本地
git clone git@github.com:ZhouJialiang48/git_skills.git
4 删除远程库文件
// 同时在缓存和物理存储中删除文件,慎用
git rm filename

// 只在缓存中删除对应的文件
git rm --cache filename

分支管理

1 分支的创建和合并
// 查看分支
git branch
// 创建分支
git branch <branch_name>
// 切换分支
git checkout <branch_name>
// 创建并切换分支
git checkout -b <branch_name>
// 合并某分支到当前分支
git merge <branch_name>
// 删除分支(-D则代表强行删除,用于未合并前就删除某分支)
git branch -d <branch_name>
2 分支间冲突的解决
  • 合并两分支git merge feature1
  • 存在冲突时,出现如下提示
  • 查看README.md,并修改冲突点
  • 图形化方式查看分支
git log --graph --pretty=oneline --abbrev-commit
3 fast forward模式的开启与关闭
  • fast forward开启与关闭的区别图示
  • 命令如下
// 默认ff模式打开
git merge dev
// 手动关闭ff模式
git merge --no-ff -m "merge with no-ff" 
4 stash的基本用法
// "储藏"尚未提交到版本库的内容
git stash
// 查看"储藏"的内容列表
git stash list
// 取出list中的内容(pop = apply + drop)
git stash pop
5 多人协作
  • 查看远程库信息
git remote
git remote -v	// -v参数显示可以抓取和推送的origin地址以及权限
  • 推送分支
git push origin master
git push origin dev
  • 抓取分支,提交修改
// 在腾讯云服务器添加ssh至GitHub,并克隆项目
git clone git@github.com:ZhouJialiang48/learn_git.git
// 查看分支,只能看到master,无法看到dev
git branch
// 创建远程dev分支到本地
git checkout -b dev origin/dev
// 提交新修改
git add test2.txt
git commit -m "add test2.txt"
git push origin dev
  • 多方提交出现冲突,进行conflict fixing
// 本地用户也提交新修改
git add test2.txt
git commit -m "add test2.txt"
// 推送失败,需抓取下来修复冲突
git push origin dev
	
// 本地dev分支与远端建立连接,并抓取远端dev分支
git --set-upstream-to=origin/dev dev
git pull	// 出现合并冲突提示,重复2修复冲突,再次pull,成功

附:git常用命令汇总

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值