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]
相关推荐
jingshaoqi_ccc6 小时前
GitKraken最后一个免费版本和下载地址
git·github·gitkraken·版本管理工具
乌云暮年6 小时前
Git简单命令
git·gitee·github·batch命令
用户1259265423209 小时前
使用 Docker 搭建 Gitea 并实现 Git HTTP 自动登录
git
一只毛驴12 小时前
谈谈对git stash的理解?
git
长风破浪会有时呀16 小时前
Git 学习笔记
笔记·git·学习
中微子1 天前
Git Rebase 详解:概念、原理与实战示例
git
荔枝吻1 天前
【保姆级喂饭教程】Windows下安装Git Flow
windows·git·git flow
云和数据.ChenGuang1 天前
git中的指令解释
git
小Lu的开源日常1 天前
在 macOS 上设置 SSH 和 Git
git·macos·ssh
eleven_h1 天前
ERROR: Permission to Splode/pomotroid.git deni
git