学习Git的第一天

Git概述:

目录

Git概述:

Git简介

安装

         常用的Git代码托管服务

使用码云代码托管服务

Git常用命令

获取Git仓库

获取Git仓库-在本地初始化Git仓库

工作区、暂存区、版本库概念

 分支操作

标签操作


Git简介


   Git是一个分布式版本控制工具,通常用来对软件开发过程中的源代码文件进行管理。通过Git 仓库来存储和管理这些文件,Git仓库分为两种:
●本地仓库:开发人员自己电脑上的Git仓库

●远程仓库:远程服务器上的Git仓库

commit:提交,将本地文件和版本信息保存到本地仓库

push:推送,将本地仓库文件和版本信息上传到远程仓库

pull:拉取,将远程仓库文件和版本信息下载到本地仓库


安装

安装完成后在任意目录点击鼠标右键,如果能看到如下菜单则表示安装完成:

√Git Gul Here:打开Git图形界面

√Git Bash Here:打开Git命令行


常用的Git代码托管服务


Git中存在两种类型的仓库,即本地仓库和远程仓库。那么我们如何搭建Git远程仓库呢?
我们可以借助互联网上提供的一些代码托管服务来实现,其中比较常用的有GitHub、码云、GitLab等。
gitHub(地址: https://github.com/ ),是一个面向开源及私有软件项目的托管平台,因为只支持Git作为唯一的版本库格式进行托管,故名gitHub
码云(地址: https://gitee.com/ ),是国内的一个代码托管平台,由于服务器在国内,所以相比于GitHub,码云速度会更快
GitLab (地址: https:/labout.gitlab.com/ ),是一个用于仓库管理系统的开源项目,使用Git作为代码管理工具,并在此基础上搭建起来的web服务
BitBucket(地址: https://bitbucket.org/),是一家源代码托管网站,采用Mercurial和Git作为分布式版本控制系统,同时提供商业计划和免费账户


使用码云代码托管服务


使用码云的操作流程如下:

1、注册码云账号:
2、登录码云

3、创建远程仓库
4、邀请其他用户成为仓库成员


Git全局设置

当安装Git后首先要做的事情是设置用户名称和email地址。这是非常重要的,因为每次Git提交都会使用该用户信息。
在Git命令行中执行下面命令:
◆设置用户信息
git config --global user.name "itcast"
git config --global user.email "hello@itcast.cn"◆查看配置信息
git config --list
注意:上面设置的user.name和user.email并不是我们在注册码云账号时使用的用户名和邮箱,此处可以任意设置。真的可以随便设置,我刚开始畏手畏脚,不敢瞎写,好纠结。


获取Git仓库


要使用Git对我们的代码进行版本控制,首先需要获得Git仓库。
获取Git仓库通常有两种方式:
在本地初始化一个Git仓库(不常用)从远程仓库克隆(常用)

获取Git仓库-在本地初始化Git仓库


执行步骤如下:
1.在任意目录下创建一个空目录(例如repo1)作为我们的本地Git仓库2.进入这个目录中,点击右键打开Git,bash窗口
3.执行命令git init
如果在当前目录中看到.git文件夹(此文件夹为隐藏文件夹)则说明Git仓库创建成功

 获取Git仓库-从远程仓库克隆
可以通过Git提供的命令从远程仓库进行克隆,将远程仓库克隆到本地

命令形式: git clone【远程Git仓库地址】

 warning:You appear to have cloned an empty repository.

警告:你似乎克隆了一个空的仓库,这是当前我在码云创建仓库时,没有权限设为开源的,我也就没放东西。导致的,但是文件夹还是创建了。


注意:仓库不能嵌套,注意是在哪层目录下


工作区、暂存区、版本库概念


为了更好的学习Git,我们需要了解Git相关的一些概念,这些概念在后面的学习中会经常提到
版本库:前面看到的.git隐藏文件夹就是版本库,版本库中存储了很多配置信息、日志信息和文件版本信息等

工作区:包含.git文件夹的目录就是工作区,也称为工作目录,主要用于存放开发的代码
暂存区: .git文件夹中有很多文件,其中有一个index文件就是暂存区,也可以叫做stage。暂存区是一个临时保存修改文件的地方

Git工作区中文件的状态
Git工作区中的文件存在两种状态:
untracked未跟踪(未被纳入版本控制)

tracked已跟踪(被纳入版本控制)

1 ) Unmodified未修改状态

2)Modified已修改状态

3 ) Staged 已暂存状态


注意:这些文件的状态会随着我们执行Git的命令发生变化

 未跟踪状态:未先执行git add * 命令则user.xml红色

已跟踪状态:执行git add *

 本地仓库常用命令如下:
git status      查看文件状态
git add          将文件的修改加入暂存区


git reset        将暂存区的文件取消暂存或者是切换到指定版本

$git reset hello.txt

$git reset --hard 版本号,依次为最新版本到以前刚开始得版本
git commit    将暂存区的文件修改提交到版本库

$git commit -m "init User.java" User.java   init初始化

向空的User.java注入内容后,在执行git status后可看到modefied: User.java  然后执行 git add User.java之后,在使用git status 可看到modefied: User.java ,

$git commit -m "edit User.java" User.java   edit编辑过的
git log           查看日志

前面执行的命令操作都是针对的本地仓库,本节我们会学习关于远程仓库的一些操作,具体包括:
git remote                    查看远程仓库


git remote add             添加远程仓库

现在码云上创建一个新的远程仓库,再来到相同名称的本地仓库目录下执行命令


git clone                      从远程仓库克隆

为了区分开,创建一个新的文件夹用于克隆


git pull                         从远程仓库拉取

git pull命令的作用是从远程仓库获取最新版本并合并到本地仓库,命令格式: git pull [short-name] [branch-name]

注意:如果当前本地仓库不是从远程仓库克隆,而是本地创建的仓库,并且仓库中存在文件,此时再从远程仓库拉取文件的时候会报错( fatal: refusing to merge unrelated histories )
解决此问题可以在git pull命令后加入参数--allow-unrelated-histories
git push                       推送到远程仓库

本地仓库推送的文件,需要先添加到暂存区{git add *},然后推送到本地仓库{git commit -m "init     test.txt" *},然后再推送到远程仓库{git push origin master}

 分支操作


分支是Git使用过程中非常重要的概念。使用分支意味着你可以把你的工作从开发主线上分离开来,以免影响开发主线。同一个仓库可以有多个分支,各个分支相互独立,互不干扰。
通过git init命令创建本地仓库时默认会创建一个master分支。
本节我们会学习关于分支的相关命令,具体如下:
git branch                                         查看分支

git branch                           列出所有本地分支
git branch -r                        列出所有远程分支
git branch -a                       列出所有本地分支和远程分支


git branch [name]                             创建分支

*是提示我们当前在那个分支


git checkout [name]                          切换分支


git push [shortName] [name]            推送至远程仓库分支

git push origin b1     origin是远程仓库的别名                                                       

git merge [name]                              合并分支

 进入一个新的窗口,按i的话是插入模式,插入完毕之后输入esc --> :wq保存后退出

标签操作


在本节中,我们将学习如下和标签相关的命令:
git tag                                      列出已有的标签
git tag [name]                          创建标签

 

git push [shortName] [name]               将标签推送至远程仓库


git checkout -b [branch] [name]               检出标签

 

 

 

 

 

 

 

 

 

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值