使用github 更新本地源码到阿里云 操作记录(linux)
来源:互联网 发布:菜鸟网络能上市吗? 编辑:程序博客网 时间:2024/06/01 10:30
使用github 更新本地源码到阿里云 操作记录
将本地虚拟机代码上传至github,并在阿里云clone下来,与本地更新代码、服务器同步一些操作记不牢,做记录如下
手动上传、克隆、push、pull,暂不使用钩子等进行自动同步。
不考虑版本回退、分支管理。
主要参考教程为廖雪峰老师的git指南
目录
创建本地版本库(虚拟机)
提交本地版本(虚拟机)
(虚拟机)上传到github
clone到本地(服务器端)
(虚拟机)本地更新源码至github
服务器更新本地代码from github
0、git的安装
sudo apt-get install git
在阿里云的centos下我使用
yum install git
安装后需要执行
git config --global user.name "Your Name"git config --global user.email "email@example.com"
上述仅仅是个标识,就像qq起昵称一样
1、创建本地版本库(虚拟机)
创建仓库的命令:
(在项目目录project上一级,如work/project时,转到work文件夹下)
git init
上述命令建立了一个仓库,其中仓库文件为隐藏,ls命令不可见
2、提交本地版本(虚拟机)
第一步,告诉git 归它管的文件/文件夹(项目目录project,在work文件夹下,下同)
git add project
之后执行commit(表示准备提交到服务器前,本地已经做好了所有准备)
git commit -m "这里写版本更新说明,方便区分不同版本的异同,避免使用中文"
这里先提前注册好github帐号并在账户下新建一个项目(project)
此时在本地用户主目录下寻找 .ssh 目录,使用ls命令寻找是否存在id_rsa.pub文件 一般是没有的
执行
ssh-keygen -t rsa -C "youremail@example.com"
再次执行ls发现文件存在,使用
more id_rsa.pub
可以查看文件内容
复制 形如 ssh-rsa 开头以及后续一堆字符,在github右上角寻找setting 在左侧寻找ssh相关的标签,add new 并复制进去
这一步是为了防止github中代码被随意修改
3、(虚拟机)上传到github
首先建立一个“origin”关联github和本地
git remote add origin git@github.com:github:帐号名(不是登录帐号)/项目名.git
接下来进行推送,推送前需要做好add 和 commit(之前已经操作过)
git push -u origin master
第一次执行会有警告,确认即可
上述代码表示将本地源码上传到github,分支为主分支(master),-u 表示远程库中master与本地master 关联
之后再次push(之后每次push之前都要add、commit)可以使用
git push origin master
以上需要注意的是 包括建立ssh key的过程和长传的过程,遇到问题考虑这几个方向
权限问题,使用命令sudo su切换到root账户
注意提交git时在git仓库位置(git init的位置)
虚拟机在root帐号下commit失败,新建终端使用普通账户试下
4、clone到本地(服务器端)
首先在服务器端部署好环境,并找到ssh key并报存到github(与上同)
之后执行
git clone git@github.com:昵称/project.git
5、(虚拟机)本地更新源码至github
本地修改后
分别使用add 和 commit
add前后可以通过以下命令查看状态(可选)
git status
6、服务器更新本地代码from github
到仓库目录 使用
git pull
即可(注意是pull不是上文的push)
假如服务器源码也产生了变化
上述命令会报错(冲突了)
如果可以舍弃服务器端源码
分别执行
git reset --hardgit pull
如果不想舍弃源码,使用
git stashgit pullgit stash pop
不想舍弃源码要注意的东西很多,不在此详细探讨。
另外关于更新本地源码有两个相关的常用命令
git pull 和 git fetch
用法示例分别如下
Git fetch origin mastergit log -p master..origin/mastergit merge origin/master
git pull origin master
前者先将代码更新之前的所有准备工作做好,使用git log xxxxxxxxxx查看异同,再执行 git merge xxxxxxxx正式更新,前者更安全
后者相当于 fetch 和merge,更方便
- 使用github 更新本地源码到阿里云 操作记录(linux)
- 【git】阿里云上传代码到github附SSH-KEY免密码上传&更新github代码到本地
- 使用git将本地项目发布到GitHub或者码云上面流程记录
- Ubuntu上传本地代码到GitHub记录
- 本地使用msysgit操作github
- 本地web项目部署到阿里云Linux服务器指南
- 使用本地window远程桌面链接到阿里云ESC服务器
- 记录每次更新到本地git仓库
- 【Git】记录每次更新到本地仓库
- AndroidStudio中使用Git发布与更新,同步到本地(github关联)
- 如何修改本地代码,并更新到github,及其他使用技巧
- AndroidStudio中使用Git发布与更新,同步到本地(github关联)
- Github-上传本地文件夹源码到Github以及下载
- linux系统上传本地代码到github
- 使用Smartgit上传本地代码到github
- 使用WebStorm上传本地项目到GitHub
- 使用WebStorm上传本地项目到GitHub
- 使用GitForwindows上传本地项目到GitHub
- 智慧楼宇篇 2 —— 室内定位技术(二)
- VS2010 MFC + SQL ADO编程
- 使用Struts开发 租房网站
- 信号的基本概念
- SSH框架浅析
- 使用github 更新本地源码到阿里云 操作记录(linux)
- 搜索树BinarySearchTree
- Eclipse+pydev 常用快捷键
- 南阳理工oj第3题
- LeetCode 34. Search for a Range
- C# 数据类型
- 操作系统(五)存储模型
- 2017-05-30:Unity5.6.1实现联网模式下控制多玩家在场景中的移动
- TFcaiCH3