从0开始学Git——Git的协同操作
环境:
test_git 目录下有个my-project 版本库
所有命令都在test_git目录下执行
本地协同操作
从远端仓库检出代码,或者克隆一个已有的版本库
拷贝一个已有的仓库
#格式: git clone 目标文件 文件
git clone ./my-project ./my-project-copy
将原版本库中的新提交传递给克隆版本库
#1.修改原版本库中的文件并执行add,commit操作
git pull #2.在原版本库中执行
git pull #3.在克隆版本库中执行
# 现在两个版本库的代码就一致了
将克隆版本库中的修改pull到原版本库中
#1.修改克隆版本库中的文件并执行add,commit操作
git pull #2.克隆版本库中执行
git pull ../my-project-copy master #3.在克隆版本库中执行,取回修改
# 现在两个版本库的代码就一致了
- 因为克隆库存储了原始库的信息所以执行pull命令时可以不加参数,而原始库没有克隆库的信息,所以执行pull命令要加克隆库的信息
- pull : 从其它库里获取提交
在共享库中提交和获取代码
把变更的代码提交到共享版本库中供其它仓库pull
- 创建共享版本库
git clone --bare ./my-project #创建一个裸奔仓库
#执行完会生成一个名为 our-project.git共享库
#1.目标仓库修改文件并执行add commit操作
#2.向共享仓库push代码
git push ..\your-project.git\ master
#3.在另一个仓库中pull共享版本库的代码
git pull ..\your-project.git\ master
远端协同操作
与中央仓库交互
从远端检出代码:
#格式 git clone 路径
git clone git@github.com:liuyanqing1023/xcEduService.git
向中央仓库提交代码:
git push #向中心仓库push代码
从中央仓库获取代码:
git pull
小结
- 工作区与版本库: 工作区是一个包含.git子目录(内含版本库)中的目录。我们可以用init命令在当前目录中创建版本库。
- 版本提交: 一次版本提交通常定义了版本库中所有文件的一个版本,它详细说明了该版本是由何人在何时何地创建的。当然,我们需要用add命令来确定哪些文件将被纳入下一次提交,然后再用commit命令创建新的版本提交。
- 查看信息: 通过status命令,我们可以查看哪些文件已被本地修改,以及哪些修改将被纳入下次提交。另外, log命令可用来显示提交历史。dirr命令可用来显示两个版本文件之间的差异。
- 克隆: 对于用clone命令创建某一个版本库的副本,我们称之为该版本库的克隆体。在一般情况下,每个开发者都会拥有整个项目版本库的完整克隆体,他/她的工作区中将会包含完整的项目历史。这使他们可以各自独立开展工作,无需连接服务器。
- 主送与拉回: push与pull命令可用于在本地和远程版本库之间共享版本提交
**** 码字不易如果对你有帮助请给个关注****
**** 爱技术爱生活 QQ群: 894109590****
从0开始学Git——Git的协同操作的更多相关文章
- Pull Request的过程、基于git做的协同开发、git常见的一些命令、git实现代码的review、git实现版本的管理、gitlab、GitHub上为开源项目贡献代码
前言: Pull Request的流程 1.fork 首先是找到自己想要pull request的项目, 然后点击fork按钮,此时就会在你的仓库中多出来一个仓库,格式是:自己的账户名/想要pull ...
- BladeX 2.0.7.RELEASE版本git后,在idea中导入项目,结果无法运行FlowApplication等几个服务的错误
问题:2.0.7.RELEASE版本git后,在Intellij IDEA运行项目,结果无法运行FlowApplication等几个服务的错误 描述:打开IDEA,点击Check out from V ...
- Visual Studio C# 利用git和github协同开发时产生冲突的解决办
Visual Studio C# 利用git和Github协同开发时产生冲突的解决办法 前言:在前两天的助教作业中,发现了自己没有办法解决在用vs开发C#的窗体项目的过程中产生的冲突问题,在查阅了资料 ...
- Git(2)多人协同操作冲突
一:多人协同操作冲突 拉取远程dev并在本地创建dev开发库,执行命令git checkout -b dev origin/dev 这里以同台机器不同窗口来模拟俩个用户操作同一分支同一文件(实际 ...
- git命令与协同开发
一 git命令 1.简单命令 git init # 初始化 (建立git 版本相关文件关系都放这里) git config --global user.email "you@example. ...
- 如何从 0 开始学 ruby on rails (漫步版)
如何从 0 开始学 ruby on rails (漫步版) ruby 是一门编程语言,ruby on rails 是 ruby 的一个 web 框架,简称 rails. 有很多人对 rails 感兴 ...
- 如何从 0 开始学 Ruby on Rails
如何从 0 开始学 Ruby on Rails (漫步版)Ruby 是一门编程语言,Ruby on Rails 是 Ruby 的一个 web 框架,简称 Rails. 有很多人对 Rails 感兴趣, ...
- [skill][git] git 常用操作记录
傻瓜入门: step by step : https://try.github.io/levels/1/challenges/1 一本书: https://git-scm.com/book/en/v2 ...
- git中通过实际操作来了解常用命令
基本的6个命令 常用的就下面6个命令,但是详细的可能有上百个命令. 还需要特别了解git的几个名词,workspace:工作区,Index/Stage:暂存区,Respository:本地仓库,Rem ...
随机推荐
- [leetcode]python 695. Max Area of Island
Given a non-empty 2D array grid of 0's and 1's, an island is a group of 1's (representing land) conn ...
- ASP.NET登录验证码解决方案
目录 #验证码效果图 #代码 0.html代码 1.Handler中调用验证码生成类 2.验证码图片绘制生成类 3.高斯模糊算法类 #注意 #参考 在web项目中,为了防止登录被暴力破解,需要在登录的 ...
- MySQL不停地自动重启怎么办
近期,测试环境出现了一次MySQL数据库不断自动重启的问题,导致的原因是强行kill -9 杀掉数据库进程导致,报错信息如下: --24T01::.769512Z [Note] Executing ' ...
- vue教程二 vue组件(1)
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <script ...
- 测试通过mweb进行发布Title
MWeb 是专业的 Markdown 写作.记笔记.静态博客生成软件,目前已支持 Mac,iPad 和 iPhone.MWeb 有以下特色: 软件本身: 使用原生的 macOS 技术打造,追求与系统的 ...
- Java性能权威指南读书笔记--之二
新生代填满时,垃圾收集器会暂停所有的应用线程,回收新生代空间.这种操作被称为Minor GC. 老年代被填满时,垃圾收集器会暂停所有应用线程,对其进行回收,接着对堆空间进行整理.这个过程被称为Full ...
- 开启java之门
一.Java语言概述 Java语言诞生于1995年,由Sun公司推出. 2009年,Sun公司被甲骨文公司收购,所以我们现在访问oracle官网即可:https://www.oracle.com Ja ...
- maven 下载 安装 环境配置
电脑系统:win10 64位 idea 2019 Java 1.8 1.链接地址,我一般都找官网 http://maven.apache.org/download.cgi 截图:注意mav ...
- 解决:Navicat连接不上MySQL 8.0
转载自 https://www.cnblogs.com/shiysin/p/shiysin.html Navicat连接不上,总是报错1251: 原因是MySQL8.0版本的加密方式和MySQL5.0 ...
- mysql 查询结果显示行号
mysql 查询时,不像oracle那样,可以直接用 rownum 显示结果行号. 可以用定义用户变量来实现 set @myrnum = 0; select (@myrnum := @myrnum + ...