Git命令整合笔记

Git基础

Git项目结构

在这里插入图片描述

Git命令
初始化
git init	#初始化项目,将项目交给git进行版本管理

此时,在git管理的项目根目录下会出现一个名为.git隐藏文件夹,该文件夹存放了git的配置文件。

在这里插入图片描述

git config 配置相关信息

git config user.name "用户名" 配置版本信息中的用户名
git config user.email "email邮箱号" 配置版本信息中的EMAIL邮箱

这里可以使用–global参数,此时配置的git信息则为全局信息。如果在当前项目下没有配置相关用户信息则使用全局配置,此处的版本相关的信息与远程仓库的账户无关。用户配置信息项目级配置优先于全局配置。

git查看文件状态

git status

  1. 绿色表示文件存入暂存区
  2. 红色表示文件还未放在暂存区
git add 提交到暂存区
  1. git add [具体文件] 提交具体的文件的到暂存区

  2. git add . 提交全部到暂存区

git commit提交到本地库
  1. git commit -m "注释" [暂存区中的具体文件名] 提交已存在暂存区的文件到本地库
  2. git commit -m "注释" 提交所有暂存区的中的文件到本地区
查看历史记录
  1. git log
    • git log --pretty=oneline 漂亮的显示格式
    • git log --oneline 更简单的显示模式
  2. git reflog
    • 带有指针步数的历史记录
回退历史版本
  1. git reset --sort [一串hash的索引值] 软回退: 只回退本地库, 不回退暂存区和工作区

  2. git reset --mixed [一串hash的索引值] 混合回退: 回退暂存区和本地库,但不回退本地库

  3. git reset --hard [一串hash的索引值] 硬回退:暂存区、工作区、本地库均一起回退

    git reset --hard HEAD^ [一串hash的索引值] 回退一步,一个符号为一步,多个则为多步

    git reset --hard HEAD~6 [一串hash的索引值] 回退6步,~符号后面数字是回退步数

    git reset --hard HEAD 可以用来重置三个区域的指针位置(将当前的版本记录全部重置到当前的位置)

版本比较

git diff [对应的文件] 与当前的缓存区中的版本进行比较,默认情况下缓存区中的历史版本与当前本地库的历史版本一直。

git diff HEAD [对应要比较的文件] 与当前的本地库中的版本进行比较

git diff HEAD^ [对应要比较的文件] 与本地库中的上一个的版本进行比较

git diff HEAD~2 [对应要比较的文件] 与本地库中的上2个的版本进行比较

git diff 不带任何要比较的文件,则会将当前修改的所有文件进行与缓存区比较(因为一致,所以基本就是和本地库的版本进行比较)

分支管理

git branch 查看版本分支(本地分支)

git branch -a 查看本地版本分支及对应的远程分支

git branch -D [分支名称] 强制删除指定分支

git branch -d [分支名称] 删除指定分支

git branch [分支名称] 创建分支

git checkout [存在的分支名称|文件名] 切换分支或者恢复上一步操作的文件

git restore [文件名]git checkout [文件名]功能相同

git checkout -b [存在的分支名称] 创建新分支并切换

git merge [存在的其他分支名称] 将其他的分支合并到当前所在的分支

注意

如果出现分支冲突,则先解决冲突(冲突文件中会有相应的提示)。然后再输入git add .命令, 最后git commit 提交合并(这里的git commit后面不带注释内容)

SSH公钥配置
ssh-keygen -t rsa -C "zj13656800820@aliyun.com"  #创建公钥, 这里的邮箱为账号邮箱号

然后一路回车确认。此时会在~/.ssh/id_rsa.pubWindows下为c:/User/xxx/.ssh/id_rsa.pub创建生产,复制文件中内容至远程版本管理系统的个人SSH公钥配置中, 确定输入密码并保存。

然后再在本地输入:

ssh -T git@gitee.com # 此处为码云

验证设置是否成功(如果出现successful则说明设置成功)

之后远程clone项目(选择SSH)至本地,往后push项目即可不用输入验证用户和密码了。

查看远程仓库

git remote -v 查看远程仓库列表

git remote add [别名] https://.... 在本地添加别名指向远程仓库地址

git remote remove [别名] 删除当前配置的远程仓库别名

git push -u [别名] 将本地仓库推至远程仓库

git push -u [远程仓库别名] [远程分支名称] 将当前分支在远程仓库创建同名的分支并提交(如果远程仓库已有同名的仓库则不在创建直接提交)。

远程-本地库操作

git fetch [远程库别名] [本地分支] 从远程库中拉取文件至本地库,但并不**合并**。

git pull [远程仓库别名] [本地分支名] 拉取并合并到本地分支。该命令相当于git fetchgit merge两个命令合并执行。

如果在远程仓库中有分支,此时pull之后可以直接进行checkout [分支名称]进入其他的分支。

Gitlab邀请团队成员

在这里插入图片描述

gitee邀请团队成员

在这里插入图片描述

github第一次使用时: 团队合作

Git操作相关问题

在这里插入图片描述

出现该问题是可以通过如下命令解决:

git pull origin master --allow-unrelated-histories

在这里插入图片描述

出现以上问题,先需要pull一下项目,再push项目:

git pull origin master
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值