git使用

仓库创建

  1. 创建本地仓库/初始化本地仓库
    项目根目录下,输入命令:

    git init
    

    会生成.git隐藏文件夹,就是本地仓库

  2. 克隆仓库

    git clone ssh://{仓库地址}
    

信息配置

  1. 配置姓名&邮箱

    git config user.name "{姓名}"	# 配置当前仓库
    git config user.email "{邮箱}"
    git config --global user.name "{姓名}"	# 全局配置
    git config --global user.email "{邮箱}"
    
  2. 查看现有配置信息

    git config --list	# 查看所有配置
    git config user.name	# 查看当前仓库
    git config user.email
    git config --global user.name	#查看全局配置
    git config --global user.email
    
  3. 创建密钥
    在git bash上运行命令:

    ssh-keygen -t rsa -C "{邮箱}"
    

    然后连续按三次回车键,生成的密钥就在.ssh文件夹的id_rsa.pub中,把密钥上传到远程仓库中

基本操作

  1. 添加文件到暂存区
git add {文件名}	# 上传指定文件
git add .	# 上传工作区所有有修改的文件
git add *	# 上传工作区所有有修改的文件
  1. 提交文件到仓库
git commit -m "{备注信息}"
  1. 查看仓库状态
    红色M是工作区,绿色M是暂存区
git status
git status -s	# 简洁查看
  1. 文件对比
    当前文件和上一个版本对比,显示具体修改内容
git diff {文件名}
  1. 查看提交日志记录
git log	# 查看所有提交记录
git log --oneline	# 简洁查看
git log --author {姓名}	# 查看指定人的提交记录
git blame {文件名}	# 查看某个文件的提交记录,会显示具体的修改内容
  1. 版本回退
    注意:指定版本之后的版本都会消失
git reset {版本号}	# 整个项目回到指定版本号
git reset {文件名称} {版本号}	# 某个文件回到指定版本号
git reset --hard 版本号	# 工作区和暂存区都会回退
git reset --soft 版本号	# 仅暂存区回退,工作区不变
git reset HEAD	# 放弃暂存区的修改(HEAD:最新已提交版本)
git reset --hard HEAD	# 放弃工作区和暂存区的修改
git checkout.	# 放弃工作区所有修改
git checkout --{文件名称}	# 放弃工作区指定文件按修改

分支管理

gitee和gitlab的默认分支都是master,github的默认分支以前是master,现在是main。

  1. 查看仓库的所有分支

    git branch	# 本地分支
    git branch -r	# 远程分支
    git branch -a	# 本地+远程分支
    
  2. 创建分支

    git branch {新分支}
    git branch <branchname> [<start-point>]	# 以start-point(可以是本地可以是远程,默认是本地当前分支)为起点分支,创建新的本地分支branchname。
    
  3. 切换分支

    git checkout {分支名称}
    git checkout -	# 切换回上一分支
    git checkout -b {新分支} {起点分支}	# 创建并切换到新分支,起点分支可以是本地/远程分支
    git checkout -t {远程分支}	# 拉取远程分支最新代码,并创建+切换到本地同名分支
    
  4. 删除分支

    git branch -d {分支名称}
    
  5. 合并分支

    git merge	# 自动合并其他分支到当前分支
    git merge {分支名称}	# 自动合并本地指定分支到当前分支
    
  6. 建立本地分支与远程分支的联系

    git branch --set-upstream-to=origin/{远程分支} {本地分支}
    

远程仓库管理

  1. 关联远程仓库

    git remote add origin {仓库地址}	# origin表示远程仓库的别名,自己命名
    
  2. 追踪关系(tracking)
    2.1. 部分场景,自动建立追踪关系:
    如,git clone的时候,所有本地分支默认与远程主机的同名分支,建立追踪关系,也就是说,本地的master分支自动”追踪”origin/master分支。
    2.2 手动创建追踪关系:

     git branch --set-upstream master origin/next  #指定本地master分支追踪origin/next分支
    
  3. 推送数据到远程仓库
    本地分支和远程分支需要存在追踪关系

    git push -u {远程主机名} {本地分支名}:{远程分支名}	# 第一次将本地分支推送到远程仓库的分支(没有则自动创建)上,-u参数相当于设置了远程主机的默认值
    git push {远程主机名} {本地分支名}:{远程分支名}
    git push {远程主机名} {本地分支名}	# 远程分支名可省略,表示将本地分支推送到远程主机追踪分支(一般同名),如果远程主机分支不存在,则自动创建
    例:git push origin master
    git push	# 如果当前本地分支只有一个追踪的远程分支,则可以省略主机名参数,推送到默认远程主机分支
    
  4. 线上仓库同步到本地

    git fetch <远程主机名> <远程分支名>:<本地分支名>	# 只是拉数据,不会自动合并
    git pull <远程主机名> <远程分支名>:<本地分支名>  #将远程分支获取下来并和本地分支混合。
    	# 拉数据+自动合并,git pull 相当于 git fetch + git merge
    	# 若省略本地分支, 则和当前分支合并。
    	# 不指定追踪远程和本地分支,则当前分支自动与对应的origin主机”追踪分支”进行合并。
    
  5. 查看当前仓库的远程分支

    git remote -v
    

解决冲突

每次提交前,先git pull最新代码,合并之后,再push

git diff	# 查看冲突文件

远程仓库的使用

  1. 注册账号
    gitee地址:https://gitee.com/
    github地址:https://github.com/

  2. 配置远程仓库的账号
    把本地电脑的密钥,添加到对应网站自己的账号设置中;配置好之后,就不需要本地登录,直接通过git连接远程仓库了

    1. 创建密钥
    2. 打开并登录gitee,然后点击头像->设置->ssh公钥-把生成的密钥添加进去。
  3. 创建远程仓库

git的标签

标签默认只创建在本地,不会push到远程仓库

  1. 创建标签
    标签包括:轻量标签(记录标签名字)和附录标签(可以补充更多内容)

    git tag {标签名称}	# 轻量标签,给当前版本创建标签
    git tag {标签名称} {版本号}	# 给指定历史版本创建标签
    git tag -a {标签名称} -m {补充内容}
    
  2. 查看标签

    git tag	# 查看所有标签
    git tag -l {标签名称}	# 搜索标签,支持模糊搜索(通配符,比如v1*)
    git show {标签名称}	# 查看指定标签的详细信息
    
  3. 共享标签(上传标签)

    git push origin {标签名称}	# 上传指定标签至远程仓库
    git push origin --tags	# 上传所有标签至远程仓库
    
  4. 删除标签

    git tag -d {标签名称}	# 删除本地指定标签
    git push origin --delete {标签名称}	# 删除远程指定标签
    
  5. 检出标签
    标签算是很特殊的分支,如果要修改已有的标签的内容,我们需要在当前的标签的基础上去创建分支,然后再修改提交。

    git checkout {标签名称}
    git checkout -b {分支名称} {标签名称}	# 检出标签的同时创建新的分支。
    

忽略文件

要忽略某些文件不需要上传到仓库中的话,我们只需要在项目的根目录创建一个叫 .gitignore 的文件。
然后把要忽略的文件的名字写到这个文件中即可。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值