Git管理

git作用:代码回溯 版本切换 多人协作 远程备份

git仓库:本地仓库:开发人员自己电脑上的Git仓库

原程仓库:远程服务器上的Git仓库

commit:提交,将本地文件和版本信息保存到本地仓库

push:推送,将本地仓库文件和版本信息上传到远程仓库

pull:拉取,将远程仓库文件和版本信息下载到本地仓库

版本库:.git隐藏文件夹就是版本库,版本库中存储了很多配置信息、日志信息和文件版本信息等

工作区:包含.git文件夹的目录就是工作区,也称为工作目录,主要存放开发的代码

暂存区:.git文件夹中有一个index文件夹就是暂存区,也可以叫做stage,暂存区是一个临时保存修改文件的地方

Git常用命令

  • 设置用户信息(user.name和user.email可以任意设置)
复制代码
git config --global user.name "Wuhu"
git config --global user.email "1234567@qq.com"
  • 查看配置信息
复制代码
git config --list
  • 获取Git仓库--在本地初始化Git仓库

在任意目录下创建一个空目录作为我们的本地Git仓库,进入这个目录中,点击右键打开Git bush窗口,执行git init

复制代码
git init

本地仓库操作

  • 获取Git仓库--将远程仓库克隆到本地仓库

在任意目录下创建一个空目录作为我们的本地Git仓库,进入这个目录中,点击右键打开Git bush窗口,执行git init

复制代码
git clone [远程仓库地址]
  • 将文件的修改加入暂存区
复制代码
git add [文件名或者*]
  • 将暂存区的文件的取消暂存或切换到指定版本
复制代码
git reset [文件名]
git reset --hard [commit后面的版本号]
  • 将暂存区文件修改提交到版本库
复制代码
git commit -m "init hello.txt" hello.txt
  • 查看日志
复制代码
git log

远程仓库操作

  • 查看远程仓库
复制代码
git remote -v

添加远程仓库,shortname引用简写(习惯写origin)

复制代码
git remote add [shortname] [url]

从远程仓库克隆

复制代码
git clone [url]

从远程仓库拉取,branchname分支名称,master主分支

复制代码
git pull [shortname] [branchname]
/**
如果当前本地仓库不是从远程仓库拉取,而是本地创建的仓库,并且仓库中存在文件,此时再从远程仓库拉取文件时会报错
(fatal:refusing to merge unrelated histories)
git pull --allow-unrelated-histories
**/

推送到远程仓库

复制代码
git push [shortname] [branchname]

Git工作区中文件的状态

复制代码
git status
  • untracked未跟踪(未被纳入版本控制)
  • tracked已跟踪(被纳入版本控制)

    1. Unmodified未修改状态

    2. Modified已修改状态

    3. Staged已暂存状态

本地文件推送到远程仓库步骤
复制代码
//将文件的修改加入暂存区
git add test.txt
复制代码
//将暂存区文件修改提交到版本库(本地仓库)
git commit -m "edit text.txt" test.txt
复制代码
//推送到远程仓库
git push origin master
分支操作
  • 查看分支
复制代码
//列出所有本地分支
git branch
​
//列出所有远程分支
git branch -r
​
//列出所有本地分支和远程分支,包括已删除的分支
git branch -a
  • 创建分支,name分支名称
复制代码
git branch [name] 
  • 切换分支
复制代码
git che  ckout [name]
  • 推送至远程仓库分支
复制代码
git pull [shortname] [name]
  • 合并分支
复制代码
git merge [name]
标签操作

标签是一个静态的概念,里面的文件状态是固定的

分支是一个动态的概念,里面的文件状态可以不断变化

  • 查看已有标签
复制代码
git tag
  • 创建标签,name标签名称
复制代码
git tag [name] 
  • 将标签推送至远程仓库
复制代码
git pull [shortname] [name]
  • 检出标签,branch新建分支用来指向某个标签
复制代码
git checkout -b [branch] [name]
相关推荐
谢尔登2 小时前
【Git】merge 分类
git
NiKo_W2 小时前
Git 版本回退与撤销修改
开发语言·git·安全
渣渣小码18 小时前
GIT客户端配置支持中文
git·git中文显示
鄃鳕18 小时前
Git 拒绝 pull,本地有未提交的修改
git
Leslie_Lei1 天前
【Eclipse】eclipse打开git拉取的项目
java·git·eclipse
渣渣小码1 天前
GIT快速上手(常用指令)
git
会豪2 天前
Git命令-图解-小白专享
git
韦禾水2 天前
IntelliJ IDEA 2023更新git凭据
git·intellij idea
Yvonne爱编码2 天前
构建高效协作的桥梁:前后端衔接实践与接口文档规范详解
前端·git·ajax·webpack·node.js
@CLoudbays_Martin112 天前
CDN是否能有效检测并且同时防御Ddos 和 CC 攻击?
java·服务器·网络·数据库·git·数据库开发·时序数据库