IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 开发工具 -> 关于git的基本操作 -> 正文阅读

[开发工具]关于git的基本操作

常用命令

配置

  1. 对完成安装后的git进行基本配置,使用命令git config:
git config --global user.name "your name" //设置全局用户名
git config --global user.email "your email" //设置邮箱
  1. 其他自定义git配置:
git config --global color.ui true //让git 显示不同的颜色
git config core.ignorecase true //让git 对仓库中的文件大小写敏感
  1. 查看所有已经做出的配置
git config -l

基本操作

1. 创建 git 版仓库

在本地创建仓库使用的命令是 git init:
首先进入到你需要进行创建仓库的文件夹路径下,然后命令行输入命令:

git init

然后通过命令ll进行查看当前目录下的目录结构,如果存在.git目录说明目录创建成功

2. 将文件添加到版本库中

git commit提交到仓库之前 需要先将其添加到暂存区。

2.1 将文件添加到缓存区的命令是:

git add . //将当前目录下的所有修改添加到暂存区中,除按照规则忽略的之外
git add Readme.md //将当前单个文件添加到暂存区

注意:空文件夹将不进入暂存区

2.2 将暂存区内的文件提交到仓库中:

git commit //将暂存区内的文件提交到仓库中
git commit -m //将暂存区内的文件提交到仓库中并设置评论

3. 查看仓库状态

命令:

git status

4. 查看仓库中的具体修改

git diff //查看当前版本库中的所有修改
git diff README.md //查看当前文件的具体改动

5. 查看提交的历史记录

git log //显示所有提交的历史记录
git log --pretty=online //单行显示提交历史记录内容

6.版本回退

git reset --hard 'commit_id' //回退到指定版本
git reset --hard HEAD^ //回退到上一个提交版本
git reset --hard HEAD^^ //回退到 上上个提交版本

7.回到未来某个提交

git reflog
git reset --hard 'commit_id'

8.撤销修改

8.1 丢弃工作区的修改
git checkout -- Readme.md //如果该文件在工作区中存在着,则丢弃该修改
git checkout -- . //丢弃当前工作区内的所有修改
8.2丢弃暂存区的修改
git reset HEAD Readme.md //将Readme.md 恢复到提交版本状态

9.删除文件

git rm Readme.md //删除已经被提交过的Readme.md

git rm只能删除已经提交到版本库中的文件,其他状态会报错

分支管理

1.查看分支

git branch //查看本地分支
git branch -v //查看相对详细的本地分支信息
git branch -va //查看包括远程仓库在内的分支信息

2.创建分支

git branch dev //创建一个名称为dev的分支

3.切换分支

git checkout dev //创建dev分支后,通过命令切换到dev分支,此命令不创建分支

4.创建并切换分支

git checkout -b dev //新建dev分支,并切换到该分支上

5.合并分支

需要两步:

git checkout master //切换到需要作为主分支的分支
git merge dev //将dev分支中的修改合并到master分支中

6.删除分支

git branch -d dev //删除分支 dev

远程仓库

1.从远程仓库中克隆

git clone https://you_git_path  //通过https协议,克隆Github上的git仓库的源码
git clone you_ssh_path  // 通过ssh协议克隆的Github上的源码

2.添加远程仓库

git remote add origin your_remote_git_repo //为本地添加远程仓库

3.推送本地的内容到远程仓库

git push origin dev -u //第一次推送时建议使用
git push origin dev //将本地内容推送给分支dev

4.从远程仓库中获取最新内容

git fetch origin master //仅仅获取远程仓库中的更新内容,不会进行自动合并
git pull origin master // 在获取远程仓库内容后,自动做合并

5.查看远程仓库的内容

git remote [-v] //显示远程仓库的信息

6.建立本地分支与远程分支的关联

git branch --set-upstream 'local_branch' origin/remote_branch

7.修改本地仓库对应的远程仓库地址

git remote set-url origin url

标签管理

1.创建标签

git tag -a 'tagname' -m 'comment' 'commit_id' //-a 参数指定标签名,-m  参数备注信息 commit_id 指定打标签的提交

2.查看所有标签

git tag //查看本地仓库中的所有标签

3.查看具体标签

git show tagname 

4.删除本地标签

git tag -d tagname

5.删除远程标签

git push origin :refs/tags/tagname

git push origin --delete tagname

git push origin :tagname

6.推送远程标签

git push origin tagname //推送单个标签
git push origin --tags // 推送所有标签到远程仓库中

其他命令

1. 临时保存修改

1.1 临时保存修改
git stash //保存本地仓库中的临时修改
1.2 查看临时保存
git stash list
1.3 恢复修改
git stash apply //恢复所有保存的临时修改

git stash pop // 恢复最近一次保存的修改
1.4 清理所有临时修改
git stash clear // 丢弃所有保存的临时修改

错误总结

问题一

来自参考
引用

解决方案

因为git默认拒绝push操作,在远程git服务器上执行
git config receive.denyCurrentBranch ignore
或者在.git/config (同样在服务器上操作)中添加
[receive]
denyCurrentBranch = ignore

问题二

在使用命令git push origin your_branch_filename时报警告

You are not allowed to push code to protected branches on this project.

解决方案

这是属于保护分支,需要自己进行分支的创建。
具体操作链接

问题三

在使用git rebase命令过程中,出现头指针分离的情况解决

解决方案

#使用命令
git branch -f master HEAD #强行将分支指向头指针所在位置
git checkout master #切换到当前分支

参考文档

Git教程详细版

  开发工具 最新文章
Postman接口测试之Mock快速入门
ASCII码空格替换查表_最全ASCII码对照表0-2
如何使用 ssh 建立 socks 代理
Typora配合PicGo阿里云图床配置
SoapUI、Jmeter、Postman三种接口测试工具的
github用相对路径显示图片_GitHub 中 readm
Windows编译g2o及其g2o viewer
解决jupyter notebook无法连接/ jupyter连接
Git恢复到之前版本
VScode常用快捷键
上一篇文章      下一篇文章      查看所有文章
加:2022-03-10 22:48:06  更:2022-03-10 22:50:35 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 6:36:44-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码