zoukankan      html  css  js  c++  java
  • 01_Git的安装和简单使用(命令行模式+图形化模式)

      刚开始用git的小白适用,参考链接:http://www.cnblogs.com/qijunjun/p/7137207.html
      实际项目开发中,我们经常会用一些版本控制器来托管自己的代码,今天就来总结下Git的相关用法,废话不多说,直接开写。

      目的:通过Git管理GitHub上托管的项目。

    一、下载安装Git

      在你开始使用 Git 前,需要将它安装在你的计算机上。对应的计算机有 Windows 系统的、Linux 系统的、MacOS 系统的。本博主使用的是 Windows 系统。所以安装 Windows 版本的 Git。
      在 Windows 上安装 Git 也有几种安装方法。 方式一:官方版本可以在 Git 官方网站下载。 打开 https://git-scm.com/download/win,下载会自动开始。 要注意这是一个名为 Git for Windows 的项目(也叫做 msysGit),和 Git 是分别独立的项目;更多信息请访问 http://msysgit.github.io/。方式二:另一个简单的方法是安装 GitHub for Windows。 该安装程序包含图形化和命令行版本的 Git。 它也能支持 Powershell,提供了稳定的凭证缓存和健全的 CRLF 设置。可以在 GitHub for Windows 网站下载,网址为 http://windows.github.com。

      本博主使用的是方式一
    1、下载Git,官方地址为:https://git-scm.com/download/win


    2、下载完之后,双击exe文件安装

    3、选择安装目录

    4、选择组件

    5、开始菜单目录名设置

    6、选择git默认使用的编辑器

    7、选择使用命令行环境

    8、以下四步默认,都是直接点击下一步,最后点击安装

    9、安装完成

    10、检验是否安装成功
    回到电脑桌面,鼠标右击如果看到有两个git单词则安装成功

    二、Git的基本工作流程

    1、Git工作区域图解


    2、向本地仓库中添加文件流程

    三、Git的初始化及仓库创建和操作

    1、Git安装之后需要进行一些基本信息设置
      a、设置用户名:git config --global user.name "在GitHub上注册的用户名";
      b、设置用户邮箱:git config --global user.email "在GitHub上注册的邮箱";
    注意:该配置会在GitHub主页上显示谁提交了该文件。命令结尾处加不加分号均可。
      c、配置ok之后,我们用如下命令来看看是否配置成功:git config --list
    注意:git config --global 参数,有了这个参数表示你这台机器上所有的git仓库都会使用这个配置,当然你也可以对某个仓库指定不同的用户名和邮箱。如下:
    如何修改git全局初始化的用户名和邮箱?答:使用--replace-all
      git config --global --replace-all user.name "在GitHub上注册的用户名";
      git config --global --replace-all user.email "在GitHub上注册的邮箱";
    然后再查看下:git config --list

    补充:说说git bash和git cmd的区别。简单一句话,git cmd是git bash的子集。所以我们直接用git bash就行了,git gui是图形界面。
    git:版本控制工具,支持该工具的网站有Github、BitBucket、Gitorious、国内的OSChina的码云仓库、csdn仓库、Coding等等。
    shell:是linux、unix系统的外壳,也可以理解为命令行,就是你输入并执行命令的地方,git通过命令行和图形界面两种方式使用shell。
    bash:是shell的一种,最常用的shell之一。
    git bash:方便你在windows下使用git命令的模拟终端(windows自带的cmd功能太弱),linux、unix下可以直接使用git。
    git shell:它是安装了git的shell,bash是一种shell。

    我们使用Git自带的命令行模式git bash来演示(windows自动的cmd也可以哦):

    2、初始化一个新的本地git仓库
    a、创建文件夹
      方法一:在本地计算机可以鼠标右击 --> 点击新建文件夹test01
      方法二:使用git新建:mkdir test01


    b、在文件内初始化git(创建本地git仓库)
      方法一:直接输入cd test01,然后输入git init
      方法二:点击test01文件下进去之后 --> 鼠标右击选择 Git Bash Here --> 输入git init

    3、向本地仓库中添加文件  
      方法一:打开编辑器直接新建index.html文件
      方法二:使用git命令touch 文件名,然后把文件通过git add 文件名添加到暂存区,最后提交操作


    将文件从暂缓区提交到本地仓库

    4、修改本地仓库文件
      方法一:用编辑器打开index.html直接进行修改
      方法二:使用git命令vim "文件名",然后在中间写内容,保存并退出编辑模式命令:qw,最后提交操作

    5、删除本地仓库文件
      方法一:在编辑器中直接把要删除的文件删除掉
      方法二:使用git删除git rm 文件名,然后提交操作


    注意:以上演示中的双引号均可以省略。

    四、Git管理远程仓库

    1、使用远程仓库的目的:备份、实现代码共享、集中化管理代码。
    Git远程仓库实际上就是保持在远程服务器上的git仓库文件。
    即git仓库文件的位置从本地变为远程服务器了。


    将本次仓库提交到远程仓库

    五、Git克隆操作

    目的:将远程仓库(github上对应的项目)下载(复制)到本地
    1、命令:git clone 仓库地址
    远程仓库地址的由来如下:


    2、克隆项目

    3、将本地仓库同步(上传)到git远程仓库中:git push

    注意:将当前文件夹中的所有文件都提交命令:git add .

    出现错误的情况有:
    a、如果出现无法同步或没有权限,解决方法如下:
    用户名和密码一定要和github上的一致。

    六、补充图形化界面的操作演示

    6.1、使用Git GUI克隆已存在的远程仓库

    1、在本地新建一个文件夹test,选中后点击右键,选择Git GUI Here
    出现下图,选择第二个,克隆已经存在的仓库。


    2、填写Source Location(源地址)和Target Directory(目标目录)。

    3、点击上图的Clone后,会提示下输入你github的用户名和密码,出现下面的界面,表示克隆完成。你可以查看本地克隆的文件。

    6.2、将本地仓库同步(上传)到git远程仓库中

    1、右键选择GIT GUI Here进如 Git 界面。


    2、选择 Edit 选择卡,选择 Options。

    3、填写github的用户名和邮箱信息,并修改默认的编码为utf-8。

    4、首次使用会在某一步的时候会跳出界面,让你输github的用户名和密码,输完就继续操作。
    按步操作如下:

    注意:可能会在第5步Push时,需要我们输入远程仓库的地址,输入完成后,点击Push。

    上图下面有3个选项,中文意思是:
    第一个:立刻获取最新改动(所以如果是本地克隆(下载)远程一个项目,也可以这样操作)。
    第二个:本地新建的项目,初始化远程仓库并发布过去。
    第三个:什么也不做。
    5、等待上传完成。

    6、查看远程仓库,就可以看到刚刚提交的内容了。

    6.3、解决合并冲突的问题

    1、远程仓库重置项目后,把本地文件直接push,会出错,这是由于git本地端文件与远程服务器端文件不一致产生冲突导致的。


    2、遇到这种情况需要先从远程仓库拉取(pull)一下文件,解决下合并冲突的问题后再push。

    拉取(pull)成功后显示

    3、获取完远程服务器代码后,就需要与我们本地的代码合并,保证我们本地的代码此时处于最新状态。
    菜单 --> Merge --> Local Merge,在Merge弹窗中选择Merge按钮,成功后会有Success弹窗出现。

    出现如图:

    选择完后,就会弹出分支选择合并窗口,红色箭头指向的就是我本地需要合并的分支(git是多分支的,注意不要选错)。
    点击Merge就完成合并了。

    1、注意:不管你本地有没有代码,fetch之后,是都要merge(合并)的,也就是说,fetch下来后,代码还在缓存区里,我们需要把它合并到自己本地项目中(即磁盘上)(这和上传代码时先将代码放到暂存区里道理一样)。
    2、当我们本地修改的内容,其他同事也修改了同一内容,并且先于我们自己提交,即说明远程仓库发生改变了,此时如果我们本地push代码就会产生代码冲突,我们本地需要解决冲突(冲突一般都是相同行数修改引起的),此时我们就要看看到底怎么修改冲突才合理(最好和同事商量,看看他修改了哪些内容,目的是啥,避免修改冲突时去掉同事的代码),即如果合并之后检测到文件有冲突,是会提示Command Failed失败的,并且Git Gui是会获取到冲突文件,对于冲突文件的解决,可以右键选择使用远程版本的还是本地版本的,并且本地已经被打开的话,是会提示是否overwritten,按照此方法挨个解决下冲突文件即可。

  • 相关阅读:
    线程高并发
    29(套接字)就是网络编程
    28线程
    27 枚举
    26静态导入和可变参数
    25JDK新特性
    25断言 assert关键字
    24单元测试 junit
    炫酷CSS
    PHP 汉字转拼音类
  • 原文地址:https://www.cnblogs.com/chenmingjun/p/10160410.html
Copyright © 2011-2022 走看看