git使用教程及常用命令
1、初次本地git连接远程仓库,并提交代码到远程仓库
第一步 码云上创建仓库
第二步 在需要上传的项目处右键--》git bush here
第三步 初始化本地git库
git init
设定本机用户名,绑定邮箱,让远程服务器知道机器的身份 git config --global user.name "hviger"
git config --global user.email "hviger@qq.com"
输完上面的命令,文件夹中会出现一个.git文件夹
第四步 添加远程仓库,将本地仓库和远程仓库连接起来
git remote add origin https://gitee.com/hviger/ruoyi.git
第五步 添加文件,将本地文件添加到本地仓库
添加全部文件 git add . 或者 git add --all<注意git和add中间有个空格>
添加特定文件使用git add 文件名称<添加多个文件可以重复使用这个或者看下面的这个>
添加多个文件使用git add 文件名称 文件名称 文件名称<中间使用空格隔开>
第六步 创建提交,将文件提交至缓存区
git commit -m '本次代码提交的说明'
第七步 进行代码合并,将本地仓库和远程仓库合并
由于开始创建仓库的时候使用了README初始化仓库,本地没有readme文件,此时本地仓库与远程仓库不同步,所以使用以下命令合并仓库
git pull --rebase origin master
第八步 推到远程代码库
git push -u origin master
git push -u origin master -f (加-f是强制提交)
git push origin master --force //git本地强制覆盖远程
需要注意的是,在push的时候会弹出输入你的用户名和密码正确后才可以。如果推不上去,可能是库的权限问题。
2、再次提交更改
第一步:使用 git add .
git status ---- 查看当前本地文件信息,会显示本地修改了哪些文件
git branch ---- 查看当前分支 提交代码之前一定要看清分支!!!
git rm ss.txt ---- 删除本地代码库文件
git rm -r aaa ---- 删除本地代码库文件夹
第二步:使用 git commit -m "第二次提交"
第三步:避免代码冲突,推送前习惯性先同步代码:git pull origin master ,代码冲突解决方法
第四步:使用 git push origin master 推送至远程仓库
3、远程代码更新到本地,从远程仓库获取代码并合并本地的版本
方式一:
git status(查看本地分支文件信息,确保更新时不产生冲突)
git pull(更新远程代码到本地)
git pull <远程主机名> <远程分支名>:<本地分支名>
git pull origin
git pull origin master:brantest //将远程主机 origin 的 master 分支拉取过来,与本地的 brantest 分支合并。
git pull origin master //如果远程分支是与当前分支合并,则冒号后面的部分可以省略。
方式二:(git pull = git fetch + git merge,这样可能会产生冲突,需要手动解决。)
git fetch --all //将远程主机的最新内容拉到本地,用户在检查了以后决定是否合并到工作本机分支中。
git fetch orgin master //将远程仓库的master分支下载到本地当前branch中
git log -p master ..origin/master //比较本地的master分支和origin/master分支的差别
git merge origin/master //进行合并
也可以用以下指令:
git fetch origin master:tmp //从远程仓库master分支获取最新,在本地建立tmp分支
git diff tmp //将当前分支和tmp进行对比
git merge tmp //合并tmp分支到当前分支
git fetch --all
git reset --hard origin/master (这里master要修改为对应的分支名)
git pull
扩展
git branch //查看分支
git branch -a //查看本地和远程的所有分支
git chechout dev //切换分支dev
git branch dev //创建dev分支
git chechout -b dev //本地创建 aaa分支,同时切换到aaa分支。只有提交的时候才会在服务端上创建一个分支
删除本地分支
# 会在删除前检查 merge状态(其上游分支或者与head)
git branch -d 分支名
# 直接删除,不检查
git branch -D 分支名
删除远程分支(把本地的删除仓库 push 到远程)
git push origin --delete 分支名
清理本地不存在的分支,如别人删除了dev,但是本地查看还有,就可以执行该条命令
git remote prune 仓库地址
git remote rename new-origin old-origin 重命名远程代码仓库标签
第一次拉取仓库代码提交README.md文件
touch README.md
git add README.md
git commit -m "add README"
git push -u origin master
4、强制还原本地
回退上一个版本,撤销工作区中所有未提交的修改内容,将暂存区与工作区都回到上一次版本,并删除之前的所有信息提交
git reset --hard origin/master // 注意后缀master代表远程分支
撤销本地所有的更改操作还原到更改前的代码,只需要一个命令(*号代表所有更改的文件):
git checkout -- *
5、git 提交,文件名大小写的修改提交不上去
git 默认对文件名的大小写敏感
但是会在仓库克隆或初始化时,根据当前系统来设置是否忽略大小写
比如 Windows 下会设置为 true → 不区分大小写,而 Linux 中为 false;
git config core.ignorecase false // 可使用此命令来查看你的 git 是否对文件名大小写敏感:为 true 则不敏感,为 false 则敏感
解决方法一:文件重命名命令
git mv test.txt TEST.txt // 将 test.txt 重命名为 TEST.txt
但是如果重命名文件夹 ,直接使用上述命令会报错,可以如下这样迂回修改:
git mv test-dir tmp // 使用 tmp 做一下中间转换 (tmp可以随意起哈)
git mv tmp TEST-DIR
解决方法二:
把待改名的文件先剪切到其他文件夹内 → 提交代码 → 然后再剪切到原本的目录下 → 提交代码。
解决方法三:(不建议)
可执行以下命令更改 git 设置,使其区分文件名的大小写。【 但是不建议使用,还是默认系统的配置好。这种操作会导致远程仓库有问题。】
git config core.ignorecase false
然后正常提交代码,修改会被识别为 untracked 类型的变更,如果直接推送到远程的话,那么远程仓库会同时存在大小写两个版本的文件(本地一切正常)
git rm -r --cached 文件名 // 删除提交到本地仓库的文件
git add . // 重新将文件添加至本地仓库
git使用教程及常用命令的更多相关文章
- Git简易教程(常用命令)
本文章参考了Pro Git 1 Git简介 Linux内核开源项目有着众多参与者,为了提高开发效率,项目组于2002年开始启用分布式版本控制系统BitKeeper来管理和维护代码.在BitKeeper ...
- Git使用教程及常用命令大全
一.git命令名词解释1.添加/跟踪/暂存:添加到本地索引 git add 文件名2.提交:提交到本地仓库 git commit -m '注释'3.推送:将提交到本地仓库的所 ...
- git日常使用的常用命令总结
git日常使用的常用命令总结 git 是什么? Git是目前世界上最先进的分布式版本控制系统(没有之一). Git(读音为/gɪt/.)是一个开源的分布式版本控制系统,可以有效.高速的处理从很小到非常 ...
- 图解git中的最常用命令
图解git中的最常用命令 Git命令参考手册(文本版) git init # 初始化本地git仓库(创 ...
- ###Git 基础图解、分支图解、全面教程、常用命令###
一.Git 基础图解 转自:http://www.cnblogs.com/yaozhongxiao/p/3811130.html Git 图解剖析 git中文件内容并没有真正存储在索引(.git/in ...
- 版本控制-Git服务器搭建和常用命令使用
Git是目前世界上最先进的分布式版本控制系统(没有之一).使用Svn的请参考<版本控制-svn服务器搭建和常用命令(centos 6.3)>,下面介绍Git的常用命令 常用命令 简单版 升 ...
- git开发流程、常用命令及工具、TortoiseGit使用及常见问题
根据我最近使用git的一些经历,git是基于分支的版本控制工具,分支有远程分支和本地分支. 一.开发流程 - 从远程服务器的master,clone一份项目文件到本地,然后本地master的基础上br ...
- Git 使用的配置 常用命令
老文一篇 搬过来 1. git的部分配置 # 全局提交用户名与邮箱 git config --global user.name "simon" git config --globa ...
- Git 配置环境及常用命令整理
一.Git教程网站 廖雪峰网站 易百GitHub命令:https://www.yiibai.com/git/git_clone.html 完成Windows环境命令下Git config配置 设置好之 ...
- git 快速入门及常用命令
身为技术人员,都知道Git是干嘛的.从服务端角度它是代码仓库,可以多人协作.版本控制.高效处理大型或小型项目所有内容:从客户端讲,它能够方便管理本地分支.且与服务端代码的同步,从拉取.合并.提交等等管 ...
随机推荐
- ansible(10)--ansible的systemd模块
1. systemd模块 功能:管理服务启动与停止,与 service 模块用法一致: 主要参数如下: 参数 说明 name 指定需要控制的服务名称 state 指定服务状态,其值可以为stopped ...
- SpringBoot-EasyExcel导出数据(带图片)
前言 EasyExcel 是阿里巴巴开源的一个Java操作Excel的技术,和EasyPoi一样是封装Poi的工具类. 但是不同的地方在于,在EasyExcel中解决了Poi技术读取大批量数据耗费内存 ...
- Clion代码自动格式化保存
目录 前言 使用外部工具Artistic Style Clion 插件配置 注意 前言 使用Clion的时候,可以自动格式化代码的操作. 使用外部工具Artistic Style 序号 名称 地址 1 ...
- RocketMQ阅读源码前的准备
本文将讲解如何在IDEA中导入 RocketMQ 源码,并运行 Broker 和 NameServer,编写一个消息发送与消息消费的示例. 一. 源码导入及调试 1.1 导入源码 RocketMQ 原 ...
- Swoole 源码分析之 TCP Server 模块
首发原文链接:https://mp.weixin.qq.com/s/KxgxseLEz84wxUPjzSUd3w 大家好,我是码农先森. 今天我们来分析 TCP Server 模块 的实现原理,下面这 ...
- AI绘图之Midjourney初体验
Midjourney (MJ) 使用笔记 最近尝试了 Midjourney 绘图,简单记录下使用流程. 注册及登陆 首先是账号注册和登陆,基本上就是一路下一步,唯一需要注意的是加入MJ频道,具体流程为 ...
- 莫烦tensorflow学习记录 (3)建造我们第一个神经网络
另一个学习文档http://doc.codingdict.com/tensorflow/tfdoc/tutorials/overview.html 定义 add_layer() https://mof ...
- python实现取得成员所在的多个位置
注:本代码主要是为了实现多个集合之间求并集时的辅助代码,简单的举个例子来说明代码的功能. 约定:例如{11: [2, 3]}表示数据11在集合2和集合3中都存在. 现有以下数据: d0 = {38: ...
- kettle从入门到精通 第六十三课 ETL之kettle kettle调用python脚本的两种方法
kettle中不能直接调用python脚本,可以通过shell脚本和http进行调用pyton服务. 一.shell脚本调用python脚本 1.下面是一段简单的无参python脚本 import o ...
- mysql中,时间类型datetime和timestamp的区别
TIMESTAMP和DATETIME的相同点: 两者都可用来表示 YYYY-MM-DD HH:MM:SS 类型的日期. TIMESTAMP和DATETIME的不同点: 1> 两者的存储方式不一 ...