git命令行推送本地分支到远程仓库
之前说过Git与IDEA强强联合(HTTPS协议连接)那么如何使用命令行来推送代码呢?
如下图所示为一个基于layui的前端代码:
目录工作区文件:
本地内容就是将这些内容推送到远程仓库
首先使用git命令初始化git本地仓库:
git init
创建本地仓库
以出现.git
命令为参考:
创建git仓库后vs code也有颜色的变化:
除了颜色的变化外还有字母呢U
,它们的含义是:
红色,未加入版本控制;
绿色,已经加入版本控制暂未提交;
蓝色,加入版本控制,已提交,有改动;
白色,加入版本控制,已提交,无改动;
灰色:版本控制已忽略文件。git文件标识:
A: 增加的文件.
C: 文件的一个新拷贝.
D: 删除的一个文件.
M: 文件的内容或者mode被修改了.
R: 文件名被修改了。
T: 文件的类型被修改了。
U: 文件没有被合并
X: 未知状态
然后绑定用户名和邮箱,便于记录提交者信息:
git config --global user.name
和git config --global user.email
将需要提交的文件或代码提交到暂存区:
git add
将文件添加到缓存区
如果之前选择在根目录的上级创建git仓库的话使用 git add [dir]
dir为路径添加到缓存区,或者使用git add filename
添加指定目录至缓存区。如果是在根目录内部,直接git add .
将当前更改文件添加到缓存区,如下图所示:
warning: LF will be replaced by CRLF
出现该警告的原因是不同系统下的换行符不一样,只需了解即可,git会自动检测系统内核,将换行符自动转换,具体了解请移步IDEA和VS code设置默认换行符为LF感谢作者!
由于git在push时会自动转换,所以直接统一格式,简单很多。这个得看个人用的上面系统,Windows默认是crlf,Linux默认是lf。直接将vs code的换行符改为LF,并且关闭自动转换,这样就不需要所谓的转换,在任何系统都可以使用。
注意将git的自动转换功能关闭:git config --global core.autocrlf false
git config --global core.autocrlf true
Git可以在你push时自动地把行结束符CRLF转换成LF,而在pull代码时把LF转换成CRLF。用core.autocrlf来打开此项功能,如果是在Windows系统上,把它设置成true,这样当签出代码时,LF会被转换成CRLF,如果本来就是LF,就会两者自动转换。git config --global core.autocrlf input
Linux或Mac系统使用LF作为行结束符;当一个以CRLF为行结束符的文件不小心被上传时需要进行修正,把core.autocrlf设置成input来告诉 Git 在push时把CRLF转换成LF,pull时不转换git config --global core.autocrlf false 关闭自动转换功能
关闭后就不再警告了,但是本地的换行符必须是LF。
可以看到文件全部变成了A
,已添加到了本地库:
git remote add origin [远程仓库地址]
添加远程仓库
git remote -v
查看远程仓库路径
git remote add origin [addr]
添加远程仓库
登录gitee选择仓库,复制仓库地址,在命令行添加
https地址的地址的最后一位是仓库名,前面一位是账号。
在仓库管理中前面一位是仓库归属,很少用到,在gitee控制台才会用到;后面一位是仓库名,上传代码时使用:
更多请移步官方文档
回到添加远程地址,如图添加成功:
git commit -m “info”
上传版本管理的分子区,也可以说是预提交区。
这里的文件或代码将会直接提交到远程仓库,如果某些文件不是必须的,需要在提交时在gitignore
文件配置需要忽视的文件。
git push [远程仓库名] [本地分支]:[远程仓库]
将当前分支push到远程仓库
推送到远程仓库有两种存储方式:
- 一个仓库放一个工作区文件所以可以新建文
- 一个仓库放多个工作区文件,需要新建文件夹
只放一个文件,这种方式更新换代容易,适用于长期维护的项目:
放多个文件,目录清晰,一个仓库放多个文件,可以用于放完整的项目文件:
一个项目的就比较容易了,直接推送即可。
放两多个文件夹的步骤如下
(1)在gitee上新建若干文件夹。
(2)将远程仓库直接克隆到本地
如下图所示在本地已经有了对应的文件夹(仓库内部):
(3)将需要上传的文件复制到对应目录下
在最外层也就是克隆远程仓库文件夹的目录下,将所有文件推送到远程仓库:
这里需要注意的是:
- 克隆下来的文件需要重新绑定远程地址
- 远程地址为新建文件外部的仓库
- 代码是提交到仓库的分支上,而不是仓库中
在gitee的管理界面的我的下面可以看到属于自己的两个仓库
这是我的仓库bolen
,有独一无二的仓库地址https://....bolen.git
,仓库是用来保存分支的。每个仓库都有一个默认的分支master
。
在gitee操作面板上可以看到分支,
那么如何添加到指定分支呢?比如,指定添加到bolen,master,或者server分支,这里有两个决定性因素:
- 远程仓库地址
- 分支名称
在推送时命令是git push [远程仓库名] [本地分支]:[远程分支名]
,这里远程仓库名和远程分支名确定了分支的唯一性。
使用git remote add origin [brachname]
后绑定了新建的仓库,在推送到推送到master
分支,或新建一个分支。通过仓库名和分支名决定分支唯一性。
(4)推送本地分支到远程仓库分支
之前已经将远程仓库克隆到本地了,而且将需要上传的代码复制到相应的文件夹下,再经过上面的配置,确定定了分支的唯一性,接下来上传到远程仓库,
上面红线的地方换为自己的分支名即可
如下图代码已上传到对应文件夹
在该仓库中也有两个文件夹,分别为项目的前端和后端
上传的到此结束了,重点在于仓库名和分支的唯一性,不然会出现各种错误。
git remote rm origin
删除旧的远程仓库
如果父文件或当前文件远程仓库绑定错了可以删除旧文件夹再添加新建文件夹的仓库:
另外在推送到默认master
文件夹时出现如下图错误的请移步git 上传出现“ ! [rejected] master -> master (non-fast-forward)”感谢作者!
这是一个简单的提交代码的部分,在实际开发会遇到很多问题,如分支的构建与融合,代码冲突,版本回退等将在遇到实际问题时图文跟新。
git命令行推送本地分支到远程仓库相关推荐
- 用git和idea推送本地项目到远程仓库
方式一:git命令方式 1.鼠标右键:Git Bash Here 2.初始化仓库:git init 3.配置签名:①git config user.name "Zhang3" ② ...
- 最实用的Git命令总结:新建本地分支、远程分支、关联和取消关联分支、清除本地和远程分支、合并分支、版本还原、tag命令、中文乱码解决方案、如何fork一个分支和修改后发起合并请求
1.常用命令git.tag整理 1.新建分支本地分支 git branch <branch-name>远程分支 git push origin <branch-name>:&l ...
- git 推送本地分支到远程分支 git push origin
** 情形:**在本地分支local_branch修改了代码,之后要提交到远程分支remote_branch上,使用命令git push origin remote_branch报错. ** 报错:* ...
- Maven学习之推送本地jar到远程仓库
配置settings.xml 配置信息 配置远程仓库地址.用户名和密码 <!-- 用户名和密码 --><servers><server><id>dev& ...
- 使用Git命令行推送代码到远程仓库,阿里云效Codeup代码管理平台
项目提交暂存.提交本地仓库.拉取.推送: [本步骤是新项目流程]请自行根据自有项目分辨是否需要跳过前两步. 右键点击项目根文件夹,选中Git Bash Here,打开命令行. (1)初始化项目命令: ...
- git推送本地分支到远程分支
场景 有时候我们开发需要开一个分支,这样可以有效的并行开发. 开分支有两种方式: 一种是在远程开好分支,本地直接拉下来; 一种是本地开好分支,推送到远程. 远程先开好分支然后拉到本地 git chec ...
- 通过Android studio使用git创建本地分支提交远程仓库以及如何查看切换分支
我们有时候对命令不熟悉的同学例如我,那么这个AS自带的这个创建分支功能就对我们必不可少了. 首先我们看下远程仓库只有主支master,没有任何分支的信息如下图: 1.首先我们打开AS,点击右下角的gi ...
- git新建分支:新建本地分支并创建远程分支,推送本地分支(已有工程)
sublime merge是个git可视化软件 背景:已有工程,需要新建一个分支push新项目 如下:本地分支为blemish等,远程分支为origin下分支. 创建之间切换到master分支,防止后 ...
- Docker 使用 docker push 命令 推送本地镜像到远程DockerHub仓库服务器
Docker 使用 docker push 命令 ----- 推送本地镜像到远程DockerHub仓库服务器 Docker hub注册用户 到官网注册账号:https://hub.docker.com ...
最新文章
- HashMap 详解七
- 学python编程-趣学Python编程
- 查看mysql数据库的主机_MySQL查看或显示数据库(SHOW DATABASES语句)
- Webservice soap wsdl区别之个人见解
- linux mint 时间不对,LinuxMint 20:发布日期和新功能
- android context继承关系,android中Context深入详解
- boost::contract模块实现虚拟可选结果的测试程序
- css3 设置多列布局
- Windows下编译openssl库
- [Leedcode][JAVA][第460题][LFU]
- Android 获得ImageView中Image的绘制大小
- 新浪uc2010官方下载
- Protobuf c++使用小坑(set_allocated函数)
- 解决windows安装mongodb出现dbexit: rc:100错误
- 人脸识别(8)----人脸识别主要算法原理
- python培训多久能入职_Python学到什么程度可以面试工作?
- apache网络服务的搭建和配置
- EWF在win7_x86_x64系统中配置
- vc6.0与vc2005配置对比
- Random随机数和for循环,实现猜数游戏和双色球
热门文章
- ParentNode,ChildNode
- 黄聪:详细讲解设计LOGO思维方式和方法【转】
- Centos5.7--64位下使用RPMForge软件仓库
- ACC自适应巡航控制模型 simulink模型+carsim设置 可选购模型说明文件和操作说明
- day23 xml模块、面向对象编程介绍
- Linux7双机,Centos 7 keepalived双机热备
- javascript笔记总结
- 高中计算机学校名字,姓名性别就读中学省份报考院校名称自主招生类型专业.PDF...
- 多元线性回归残差分析——基于SPSS统计分析工具
- 艾钧教授3月29日为广东省国家电网讲授《电力企业实现“碳达峰,碳中和”根本途径与方法》课程圆满结束