怎么把Java,PHP,Vue等项目上传到GitHub,码云等
一、到github或者码云上建立一个私有或公开仓库(这里以github为例)
创建成功后我们得到了一个仓库地址,github上的操作完成,现在去项目内捣鼓
二、提交本地文件并推送
1、我是用命令的格式上传项目,首先要安装github :官方的下载地址:https://git-scm.com/downloads/,下载好直接安装即可。
2、进入需要上传的项目文件夹中(上传XXX项目,在本地就进去XXX项目即可)。
3、进入要上传的项目目录 点击鼠标右键 选择 Git Bash Here
4、输入git init ,是为该项目成为本地git仓库,之后会生成一个.git文件。如图:
拓展开始 如果有不提交的文件则创建 .gitignore 文件,建立下面的规则(比如vue的springboot的target目录):
可输入git status 查看会提交推送的文件
拓展结束
5、输入命令 git add . (注意是 git add 空格 . ),该命令把本地项目中的所有文件添加到刚刚生成的git仓库
6、输入命令 git commit -m "这里是提交时候添加的注释" 比如 git commit -m "debug"
7、git remote add origin 刚刚创建的github,码云仓库的地址 比如 git remote add origin git@github.com:MPengYu/test.git
拓展开始 怎么修改推送地址,比如我又建了个新仓库想把代码放上去(无需求可不操作):
(1)修改命令git remote set-url origin url
(2)先删后加git remote rm origin git remote add origin url
(3)直接修改config文件
查看远程仓库地址:git remote -v
拓展结束
8、(第一次提交可不操作)输入命令 git pull origin maser 拉取 ,该命令是把本地仓库更新和远程仓库一样
9、输入命令 git push -u origin master 推送 提交文件,会出现输入账号(邮箱)和密码,输入就好了。
10、最后我们在github或者码云上的项目文件就可以看见我们上传的文件了
拓展开始 多人协同开发的推送操作:
拉取pull,提交commit,推送push。为啥要不能直接commit再push呢?
我一般先pull再commit再push,pull并不是把拉取下了直接覆盖,没冲突不影响我们修改后的代码,有冲突也会提示解决。
比如你从一个git log
为1,2,3,4,5,6
的远程库拉取到了本地,另一个同事也拉取了同样的代码,而且你的同事先于你提交到远程了,此时远程的版本是1,2,3,4,5,6,7_new,8_new
,而你当前只是本地的版本1,2,3,4,5,6,7_local,8_local,9_local,
从这里你就能看出你前一部分和远程的一样,后一部分和远程的不一样,这个时候你不能正常推送上去的,如果你采取git push origin master --force,
那么远程的版本就变成了1,2,3,4,5,6,7_local,8_local,9_local,
之前你同事推送的7_new,8_new
这两次推送被覆盖了,这不是大家想要的情况,因此需要git pull
来将本地的版本合并成这样1,2,3,4,5,6,7_new,7_local,8_local,8_new,9_local,10_commit_merge,
远程和本地的排序是按当时 commit 的时间来排的,最后一个10_commit_merge
就是你本地和远程的版本,因为你们操作的是同一个库始终要保持代码的同步,所以一旦版本库发生改动同一分支下的所有人都要跟着去同步他,因为各开发各的直接往上推,git不能自动处理冲突。
拓展结束
最新文章
- Xdebug文档(七) 远程调试
- I2C 基础原理详解
- 如果asp.net mvc中某个action被执行了两次,请检查是不是以下的原因
- js加密解密
- SymmetricDS 数据库双向同步开源软件入门
- 系统调用wait、waitpid和exec函数
- prob
- 打造一个自动检测页面是否存在XSS的小插件
- 【Hadoop学习】HDFS中的集中化缓存管理
- CSS选择器介绍
- 通过SPList Definition自定义ListItem打开编辑详细页面
- C —— 零碎笔记
- win7-64bit 下oracle11g plsql 的正确安装
- poj1639 Picnic Planning 最小度数限制生成树
- 区块链下的io域名到底有多神秘?
- 讨论.NET Core 配置对GC 工作模式与内存的影响
- jq 中each的用法 (share)
- 在openjdk8下看Unsafe源码
- pip的更新问题
- byte数据常量池问题