回顾Linux作业中用命令行的方式管理本地与远程仓库的过程,原理图如下:

与之前本质相同,但是使用GUI的github管理工具将更为便捷,Sourcetree就是其中之一

1.在Windows下安装git

官网下载后选择默认配置安装

启动Git Bash显示下面界面表示安装成功

 2.在官网下载Sourcetree

点击安装,进入第一步选择登陆Bitbucket或免登录破解

下一步

安装Mercurial后就可以进入管理工具了

 3.将github项目克隆到本地,并将URL复制到Sourcetree的Clone的地址栏中,并选择保存到本地的路径

提交代码的过程与命令行操作过程一致,先把文件放入对应文件夹,在sourcetree中可以看到可缓存的文件,确认缓存后文件被放入缓存,之后点击提交就是提交到本地仓库,最后推送给就是push到github的过程

至此提交文件就成功了

4.修改文件

现在本地文件夹下建立临时文件text.txt并输入一些内容,按上述步骤推送上去

之后对文件内容进行修改

在sourcetree页面可以看到修改的对比内容,红色为历史记录,绿色为最新修改版,再次提交推送就完成修改了

5.查看提交记录以及回退

在左侧点击History,可以看到每一次的提交记录以及时间,选中一次想要回退的提交记录,点击重置分支到此次提交——强行合并

这样即放弃所有之前修改,并将文件状态回到该次提交时的状态

6.代码分支

点击分支—新建分支,选择一次提交作为创建分支的起始

再次修改text.txt,此次提交勾选当前分支

推送后可以在github看到改动

切换master分支和追加text分支可以看到,两个分支下的text.txt内容不同

合并分支也很简单,先切换到主分支,点击合并——选择追加text分支;文件改动后再推送主分支即可

注意:在一个分支修改后,要放入暂存才能切换到别的分支

合并冲突:多个分支同时修改一部分代码,冲突在文件中以<开头,=中间占行,>结尾

解决合并冲突只需要将文件手动改写回,再提交

删除分支:选择追加text(本地和远程)

到github可以看到只剩一个分支了

使用Sourcetree(for windows)建立github同步仓库的更多相关文章

  1. git windows 安装 - Github同步 / Vscode源代码管理:Git 安装操作

    github上创建立一个项目 登录github网站,在github首页,点击页面右下角"New Repository" 最后点击"Create Repository&qu ...

  2. 使用命令创建github代码仓库,push本地仓库到github远程代码仓库

    1.利用命令创建github远程代码仓库 在将本地代码push到github远程代码仓库之前,总是需要新建github代码仓库,在将本地仓库关联到github远程仓库.其中最为繁琐的操作是建立gith ...

  3. 使用git将本地仓库同步到github远程仓库

    一.下载安装git客户端windows版本 二.建立本地仓库文件夹 三.在本地仓库里右键点击Git Bash Here 四.初始化本地仓库 [git init] 执行之后仓库中会创建隐藏的文件夹.gi ...

  4. Github首次使用教程(本地新建项目并同步到Github远程仓库)

    网上关于Github的教程很多且有点乱,自己亲自躺坑实践,现分享出来给将要入坑的小伙伴. 主要步骤: 创建Github帐号,登录,新建仓库(远程仓库) 下载安装Git,git bash配置及简单使用( ...

  5. hexo建立github,gitcafe博客并实时同步的要点

    把hexo博客的源码和生成的页面实时同步到github和gitcafe. 用搜索引擎搜索"github 博客"等关键字会出现大量很好的文章教小白一步步搭建.我这里列出一些关键点,希 ...

  6. Git本地仓库与远程github同步的时候提示fatal: remote origin already exists 错误解决办法

    Git本地仓库与远程github同步的时候提示fatal: remote origin already exists 错误解决办法 1.git在本地的电脑创建了仓库,要远程同步github的仓库.使用 ...

  7. 本地Git仓库与GitHub/GitLab仓库同步

    本地仓库即为在你的电脑上的项目文件,远程仓库即为服务器仓库,如GitHub.GitLab或其他等.此处以GitHub介绍本地仓库与远程仓库的同步.可先创建本地仓库,也可先创建GitHub仓库,但都需要 ...

  8. git创建/合并分支/删除分支/将修改后的内容同步到GitHub远程仓库

    1.创建分支并切换到刚创建的分支(这里创建新的分支来修改README.md的内容然后将创建的分支与master分支合并,最后删除创建的分支) $ git checkout -b 分支名 Switche ...

  9. Windows英文版GitHub客户端使用操作流程图文攻略教程现没中文版

    Git是一个分布式的版本控制系统,最初由Linus Torvalds编写,用作Linux内核代码的管理.作为一个程序员,我们需要掌握其用法. 作为开源代码库以及版本控制系统,Github目前拥有140 ...

随机推荐

  1. LEETCODE 1254 统计封闭岛屿的数目 Number of Closed Islands

    地址 https://leetcode-cn.com/contest/weekly-contest-162/problems/number-of-closed-islands/ 有一个二维矩阵 gri ...

  2. 如何让junit的测试跑多次

    对JUnit4可以使用下面的方法: @RunWith(Parameterized.class) public class RunTenTimes { @Parameterized.Parameters ...

  3. MYSQL高可用集群架构-MHA架构

    1  MHA简介:MHA(Master High Availability)目前在MySQL高可用方面是一个相对成熟的解决方案,它由日本DeNA公司youshimaton(现就职于Facebook公司 ...

  4. WPF 精修篇 窗体唯一(Single) 显示在最前

    原文:WPF 精修篇 窗体唯一(Single) 显示在最前 只运行一个窗体 并在一次点击时 显示到最前 发现用 SetForegroundWindow 并不是稳定的有效 最后使用 SetWindowP ...

  5. vue--npm的使用

    npm介绍 NPM 全称 Node Package Manager,它是 JavaScript 的包管理工具, 并且是 Node.js 平台的默认包管理工具.通过NPM 可以安装.共享.分发代码,管理 ...

  6. Java 泛型示例 - 泛型方法,类,接口

    Java Genrics 是 Java 5 中引入的最重要的功能之一. 如果您一直在使用Java Collections并使用版本 5 或更高版本,那么我确定您已经使用过它. Java 中具有集合类的 ...

  7. 程序员,你还不会合理选择Filter、Interceptor、Aspect?

    小伙伴们应该听说过过滤器.拦截器.切面,印象上都能够起到截断拦截的作用,在做一些业务需求时,不知道如何选择,今天老顾就来介绍一下他们之间的区别. 过滤器可以拦截到方法的请求和响应 (ServletRe ...

  8. 13-scrapy中selenium的应用

    一. 引入 在通过scrapy框架进行某些网站数据爬取的时候,往往会碰到页面动态数据加载的情况发生,如果直接使用scrapy对其url发请求,是绝对获取不到那部分动态加载出来的数据值.但是通过观察我们 ...

  9. pytest框架与unittest框架的对比

    一.pytest的优势 pytest是基于unittest之上的单元测试框架,它的优势如下: 自动发现测试模块和测试方法 断言使用 assert + 表达式 可以设置测试会话级(session).模块 ...

  10. Springboot整合单元测试

    概述 对于简单易懂的小项目而言,可以不适用单元测试对平时开发没有什么影响,但是对于大型项目,单纯的依赖 “手点功能测试”, 那简直就是灾难,好了,说道这里,应该明白测试的一个重要性了,,,接下来,我们 ...