环境:

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的协同操作的更多相关文章

  1. Pull Request的过程、基于git做的协同开发、git常见的一些命令、git实现代码的review、git实现版本的管理、gitlab、GitHub上为开源项目贡献代码

    前言: Pull Request的流程 1.fork 首先是找到自己想要pull request的项目, 然后点击fork按钮,此时就会在你的仓库中多出来一个仓库,格式是:自己的账户名/想要pull ...

  2. BladeX 2.0.7.RELEASE版本git后,在idea中导入项目,结果无法运行FlowApplication等几个服务的错误

    问题:2.0.7.RELEASE版本git后,在Intellij IDEA运行项目,结果无法运行FlowApplication等几个服务的错误 描述:打开IDEA,点击Check out from V ...

  3. Visual Studio C# 利用git和github协同开发时产生冲突的解决办

    Visual Studio C# 利用git和Github协同开发时产生冲突的解决办法 前言:在前两天的助教作业中,发现了自己没有办法解决在用vs开发C#的窗体项目的过程中产生的冲突问题,在查阅了资料 ...

  4. Git(2)多人协同操作冲突

    一:多人协同操作冲突 拉取远程dev并在本地创建dev开发库,执行命令git checkout -b  dev  origin/dev  这里以同台机器不同窗口来模拟俩个用户操作同一分支同一文件(实际 ...

  5. git命令与协同开发

    一 git命令 1.简单命令 git init # 初始化 (建立git 版本相关文件关系都放这里) git config --global user.email "you@example. ...

  6. 如何从 0 开始学 ruby on rails (漫步版)

    如何从 0 开始学 ruby on rails (漫步版) ruby 是一门编程语言,ruby on rails 是 ruby 的一个 web 框架,简称 rails. 有很多人对  rails 感兴 ...

  7. 如何从 0 开始学 Ruby on Rails

    如何从 0 开始学 Ruby on Rails (漫步版)Ruby 是一门编程语言,Ruby on Rails 是 Ruby 的一个 web 框架,简称 Rails. 有很多人对 Rails 感兴趣, ...

  8. [skill][git] git 常用操作记录

    傻瓜入门: step by step : https://try.github.io/levels/1/challenges/1 一本书: https://git-scm.com/book/en/v2 ...

  9. git中通过实际操作来了解常用命令

    基本的6个命令 常用的就下面6个命令,但是详细的可能有上百个命令. 还需要特别了解git的几个名词,workspace:工作区,Index/Stage:暂存区,Respository:本地仓库,Rem ...

随机推荐

  1. Gym - 101194L World Cup 暴力

    World CupInput file: Standard InputOutput file: Standard OuptutTime limit: 1 second Here is World Cu ...

  2. HelloDjango 启动!免费带你学Django全栈!

    欢迎 追梦 入伙 HelloGitHub-Team,同时为我们带来了完全免费的 HelloDjango 系列教程,全网首发于 HelloGitHub 公众号.让想你的系列文章被跟多人看到,那就来加入我 ...

  3. baserecyclerviewadapterhelper -- setOnItemChildClickListener出现的问题

    出现问题 使用baserecyclerviewadapterhelper 的时候使用 adapter.setOnItemChildClickListener()方法,点击没有反应. adapter.s ...

  4. python虚拟环境管理 Pipenv 使用说明

    安装 pip install pipenv 检查是否安装成功 pipenv --version 创建虚拟环境(在工程文件夹下) pipenv install 默认下,Pipenv统一管理所有虚拟环境 ...

  5. python找质数对

    python找质数对 编写python脚本,输入一个正整数,输出有几对质数的和等于这个正整数. 例如输入一个正整数10,可以找出有“3+7=10”.“5+5=10”两个质数对的和为10. 要实现这个功 ...

  6. Codeforces Round #554 (Div. 2) C. Neko does Maths (数论 GCD(a,b) = GCD(a,b-a))

    传送门 •题意 给出两个正整数 a,b: 求解 k ,使得 LCM(a+k,b+k) 最小,如果有多个 k 使得 LCM() 最小,输出最小的k: •思路 时隔很久,又重新做这个题 温故果然可以知新❤ ...

  7. 消费端如何保证消息队列MQ的有序消费

    消息无序产生的原因 消息队列,既然是队列就能保证消息在进入队列,以及出队列的时候保证消息的有序性,显然这是在消息的生产端(Producer),但是往往在生产环境中有多个消息的消费端(Consumer) ...

  8. 用wxpy管理微信公众号,并利用微信获取自己的开源数据。

    之前了解到itchat 乃至于 wxpy时 是利用tuling聊天机器人的接口.调用接口并保存双方的问答结果可以作为自己的问答词库的一个数据库累计.这些数据可以用于自己训练. 而最近希望获取一些语音资 ...

  9. ESP-8266 RTOS 环境搭建

    本节为 ESP-8266 RTOS 的环境搭建 只适合Linux环境,推荐Ubuntu.本例以Ubuntu16.04-x64为例 安装 git [dzlua@ubuntu: ~]$ sudo apt ...

  10. some (1)

    每次在写博客的时候,都是自己觉得在工作中非常重要的东西,写东西的时候,也是一个思考的过程.好的东西不光帮助别人,也使自己有进一步的理解.