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]
相关推荐
cen__y7 小时前
Linux12(Git01)
linux·运维·服务器·c语言·开发语言·git
bukeyiwanshui10 小时前
20260518 Swift实验
git·swift
qziovv10 小时前
Git 回退场景
大数据·git·elasticsearch
来自大山深处的Doge_12 小时前
解决Git提交更新更改时出错: detected dubious ownership in repository at ...
git
嵌入式爱好者hsw15 小时前
Git 部署本地仓库
git
C137的本贾尼16 小时前
Git基本操作(三):版本回退,坐上“时光机”
git
ylifs17 小时前
目的驱动式Git用法
git
来尔君18 小时前
Git Bash 提示符简化(就是每次敲命令时上面显示的那一行信息)
git·命令行
我叫张小白。18 小时前
PyCharm 集成 Git 与 Gitee
git·pycharm·gitee
小雨青年19 小时前
Git Bisect 实战:用二分法快速找到引入 Bug 的提交
git·bug