小工具      在线工具  汉语词典  css  js  c++  java

git命令行推送本地分支到远程仓库

# Git,git,gitee 额外说明

收录于:158天前

之前说过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.namegit 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代码设置默认换行符为LF感谢作者!

由于git推送的时候会自动转换,所以可以直接统一格式,简单多了。这取决于您使用的系统。对于 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到远程仓库

推送到远程仓库有两种存储方式:

  • 仓库包含工作区文件,以便您可以创建新文件
  • 如果要在一个仓库中存储多个工作区文件,需要新建一个文件夹。

只放一个文件,这种方式更新换代容易,适用于长期维护的项目:
在这里插入图片描述
放多个文件,目录清晰,一个仓库放多个文件,可以用于放完整的项目文件:

在这里插入图片描述

对于一个项目来说比较简单,直接push就可以了。

放置两个或多个文件夹的步骤如下

(1)在gitee上新建几个文件夹。

(2)将远程仓库直接克隆到本地
在这里插入图片描述
如下图所示在本地已经有了对应的文件夹(仓库内部):
在这里插入图片描述

(3)将需要上传的文件复制到对应目录

在这里插入图片描述
在最外层也就是克隆远程仓库文件夹的目录下,将所有文件推送到远程仓库:

这里需要注意的是:

  1. 克隆的文件需要重新绑定远程地址
  2. 远程地址是新创建的文件之外的仓库。
  3. 代码提交到仓库的分支,而不是仓库

在gitee管理界面的me下,可以看到两个属于你的仓库。

在这里插入图片描述
这是我的仓库bolen,有独一无二的仓库地址https://....bolen.git,仓库是用来保存分支的。每个仓库都有一个默认的分支master

在gitee操作面板上可以看到分支,
在这里插入图片描述
那么如何添加到指定分支呢?比如,指定添加到bolen,master,或者server分支,这里有两个决定性因素:

  • 远程仓库地址
  • 分店名称

在推送时命令是git push [远程仓库名] [本地分支]:[远程分支名],这里远程仓库名和远程分支名确定了分支的唯一性。

使用git remote add origin [brachname]后绑定了新建的仓库,在推送到推送到master分支,或新建一个分支。通过仓库名和分支名决定分支唯一性。

(4)将本地分支push到远程仓库分支

之前已经将远程仓库克隆到本地,将要上传的代码复制到对应的文件夹中。经过上述配置后,分支的唯一性已经确定,然后上传到远程仓库。

在这里插入图片描述

只需将上面的红线替换为您自己的分支名称即可。

如下图代码已上传到对应文件夹
在这里插入图片描述
在该仓库中也有两个文件夹,分别为项目的前端和后端

在这里插入图片描述

至此上传结束。关键是仓库名称和分支要唯一,否则会出现各种错误。

  • git remote rm origin删除旧的远程仓库

如果父文件或当前文件的远程仓库绑定错误,可以删除旧文件夹,然后添加新文件夹的仓库:

在这里插入图片描述

另外在推送到默认master文件夹时出现如下图错误的请移步git上传时出现“![rejected] master -> master (non-fastforward)”感谢作者!

在这里插入图片描述

这是提交代码的简单部分。在实际开发中,会遇到很多问题,比如分支构建和集成、代码冲突、版本回滚等,图文会在遇到实际问题时更新。

. . .

相关推荐

额外说明

【Python教程入门】第14章 逻辑运算符

本篇我们将会学习 Python 逻辑运算符,以及如何使用它们组合多个判断条件。 逻辑运算符 有些时候我们想要一次检查多个判断条件,为此可以使用逻辑运算符(logical operator)。 Python 支持以下三种逻辑运算符: and or not

额外说明

转:SQL LIKE语句多条件贪婪匹配算法

原文转载自:http://blog.csdn.net/yangyuankp/article/details/8039990   在CMS开发中,经常会有类似这样的需求: 提问——回答模式,最经典的例子就是百度提问。 提问者提出问题,由其他人回答,其他人可

额外说明

[Spring]配置文件-properties和xml

文章目录 1. 前言 2. properties配置文件 3. xml配置文件 4. 总结 1. 前言 在Spring中,配置文件有两种,properties配置文件和xml配置文件 properties配置文件,在Java编程中是一种常见的配置文件形式

额外说明

解决mybatis-plus where直接拼接and/or条件连接语句

文章目录 一. 常用解决方案 二. 动态拼接sql 一. 常用解决方案 1.常规的在xml直接写sql语句 2.但是mybatis-plus为我们提供的动态sql生成,下面以此为例 二. 动态拼接sql 背景: 用户可以输入以下内容. 不输入即为全查询.

额外说明

Flutter移动应用开发实战——框架与导航

QQ 1274510382 Wechat JNZ_aming 商业联盟 QQ群538250800 技术搞事 QQ群599020441 解决方案 QQ群152889761 加入我们 QQ群649347320 共享学习 QQ群674240731 纪年科技am

额外说明

Mysql定时删除表数据

由于用户环境有张日志表每天程序都在狂插数据,导致不到一个月时间,这张日志表就高达200多万条记录,但是日志刷新较快,里面很多日志没什么作用,就写了个定时器,定期删除这张表的数据。 首先查看mysql是否开启定时任务开关 SHOW VARIABLES LI

额外说明

【Unity3D软硬件】Unity3D与串口通信 SerialPort类完全教程

推荐阅读 CSDN主页 GitHub开源地址 Unity3D插件分享 简书地址 我的个人博客 QQ群:1040082875 大家好,我是佛系工程师☆恬静的小魔龙☆,不定时更新Unity开发技巧,觉得有用记得一键三连哦。 一、前言 最近,有小伙伴再整串口通

额外说明

win7用户帐户控制数据重定向

VC++常用功能开发汇总(专栏文章列表,欢迎订阅,持续更新...)https://blog.csdn.net/chenlycly/article/details/124272585C++软件异常排查从入门到精通系列教程(专栏文章列表,欢迎订阅,持续更新.

额外说明

分析 Spring 的依赖注入模式

一、依赖注入 二、Field Injection 优点 缺点 三、Constructor Injection 优点1. 容易发现 code smell 优点2. 容易厘清依赖关系 优点3. 容易写单元测试 优点4. Immutable Object 缺点

额外说明

wordpress插件_WordPress插件Spring大扫除,不仅限于Spring!

WordPress 插件 Recently an article Ryan Imel posted on WPCandy about the 过分强调活跃插件数量的重要性 inspired some debate. The argument is ess

ads via 小工具