Git源代码管理

  Git(多人协同开发同一个项目),作用就是源代码管理,为什么需要源代码管理呢,方便多人协同开发,并且方便版本控制。

Git管理源代码特点:

  1、Git是分布式管理。服务器和客户端都有版本控制能力,通过代码的提交与合并。(意思就是说每台电脑都可以有版本控制能力,代码管理能力)。

  2、Git会在根目录下创建一个.git隐藏文件夹,作为本地代码仓库。

Git操作流程:

Git服务器------>本地仓库(.Git)-------->客户端------->本地仓库------>Git服务器

从图中可以看出,从远程仓库clone数据到本地仓库(.git),然后在客户端上编辑等,commit到本地仓库,然后在把本地仓库push给远程仓库(即服务器仓库),远程仓库pull到本地仓库,在到客户端。

工作区暂存区和仓库区

  工作区:

 对于添加,修改,删除文件的操作,都发生在工作区中。

  暂存区:

暂存区指将工作区中的操作完成小阶段的存储,是版本库的一部分。  

  仓库区:

仓库区表示个人开发的一个小阶段的完成

  1、仓库区中记录的各版本是可以查看并回退的

  2、但是在暂存区的版本一旦提交就再也没有了 

Git单人本地仓库操作

  本地仓库是个隐藏文件(.git)。

1、安装git(linux系统)(windows百度)

sudo apt-get install git

2、检查安装结果

git

3、创建项目(linux直接在桌面创建文件夹)

    在F盘目录下创建一个文件夹gitTest,表示工作项目:

4、创建本地仓库

  进入到刚才创建的gitTest,并创建本地仓库.git,新建的本地仓库是个空仓库。

  1、

  2、创建仓库

git init

出现上面英文表示安装成功空仓库。

5、配置个人信息

  git config user.name 'lishuntao'
git config user.email '1259553287@qq.com'

打开查看隐藏文件,因为我们创建的项目是隐藏的。

6、新建py文件

  在项目文件gitText里面创建login.py文件,用于演示。

 7、查看文件状态

git status

红色表示新键文件或者新修改的文件,都在工作区。绿色表示文件在暂存区。新建的login.py文件在工作区,需要添加到暂存区并提交到仓库区。

8、将工作区文件添加到暂存区

git add login.py#添加指定文件

git add . #添加所有文件

 9、将暂存区文件提交到仓库区

git commit -m "版本描述"

commit会生成一条版本记录 -m后面是版本描述信息

 10、接下来可以在login.py文件中编辑代码

代码编辑完成后即可进行addcommit操作,还有添加和提交的合并命令

git commit -am "版本描述"

11、查看历史版本

git log

git reflog#都是一样的

12、回退版本

  1、

HEAD表示当前最新版本
HEAD^表示当前最新版本的前一个版本
HEAD^^表示当前最新版本的前两个版本,以此类推...
HEAD~1表示当前最新版本的前一个版本
HEAD~10表示当前最新版本的前10个版本,以此类推...
git reset --hard HEAD^

 2、当版本非常多的时候选择的方案(通过每个版本的版本号回退到指定版本)

git reset --hard 版本号

文件为空!!!!说明跳转到第一次的版本了。

13、撤销修改

只能撤销工作区、暂存区的代码,不能撤销仓库区的代码。撤销仓库区的代码就相当于回退版本操作。

  撤销工作区代码

git checkout 文件名

撤销暂存区代码

# 第一步:将暂存区代码撤销到工作区
git reset HEAD 文件名
# 第二步:撤销工作区代码
git checkout 文件名

 14、对比版本库

新加代码 sum4 = 40,不add到暂存区:

对比版本库与工作区:

git diff HEAD -- login.py

 对比版本库

git diff HEAD HEAD^ -- login.py

 15、删除文件:删除文件分为确定删除和误删

在项目中新建test.py文件,并添加暂存区和提交到仓库。

确定删除处理:

# 删除文件
rm 文件名
# git确定删除文件,对比添加文件git add
git rm 文件名
# 删除后记录删除操作版本
git commit -m '删除描述'

误删处理:撤销修改即可:

  # 删除文件(误删)
rm 文件名
# git撤销修改
git checkout -- 文件名

01-Git单人本地仓库操作的更多相关文章

  1. Git单人本地仓库操作

    本地仓库是个.git隐藏文件 以下为演示Git单人本地仓库操作 1.安装git sudo apt-get install git 密码:skylark 2.查看git安装结果 git 3.创建项目 在 ...

  2. Git 学习(三)本地仓库操作——git add & commit

    Git 学习(三)本地仓库操作——git add & commit Git 和其他版本控制系统如SVN的一个不同之处就是有暂存区的概念.这在上文已有提及,本文具体说明什么是工作区及暂存区,以及 ...

  3. github仓库主页介绍、用git管理本地仓库和github仓库、搭建网站

    github仓库主页介绍 名词解释: 工作区: 添加.编辑.修改文件等动作 暂存区: 暂存已经修改的文件,最后统一提交到git中 git(仓库): 最终确定的文件保存到仓库,成为一个新的版本,并且对他 ...

  4. 使用Git初始化本地仓库并首次提交代码

    本文介绍使用Git初始化本地仓库,并首次提交代码到远程仓库GitLab上面. 首先,登录GitLab,创建一个新项目的私人仓库: 然后,在本地仓库(就是你写代码文件夹),右键,Git Bash Her ...

  5. 使用 Git 删除本地仓库和远端仓库文件

    使用 git bash 来删除 一.将文件(夹)添加到暂存区 这里假设本地和远端都有一个 test.txt 文件先在本地删除,通过 ·git status 查看通过git add test.txt 添 ...

  6. git原理-本地仓库认识

    项目人员使用git,几乎70%的工作都是在本地仓库完成的.由此可见本地仓库的重要性. 下面我们就通过一些基本的命令讲下git的本地仓库的结构,存储流程,数据类型,如何存储...... 仓库结构 大家都 ...

  7. 和同事合作开发,使用局域网 git创建本地仓库

    转自原文 和同事合作开发,使用局域网 git创建本地仓库 1.仓库 建一个空文件夹来做仓库,例如建为 cangku 1.1 cd 到 cangku目录下 创建远程仓库容器 mkdir  mycangk ...

  8. Git创建本地仓库&把pycharm项目添加GitHub仓库上

    一.创建本地仓库 1.1.下载Git地址:https://git-scm.com/downloads 下载完,一路next就可以 1.2.打开Git Bash输入: #创建一个learngit目录 $ ...

  9. 如何使用Git建立本地仓库并上传代码到GitHub

    使用Git建立本地仓库并上传代码到GitHub 工具/原料   电脑安装git客户端.注册github账号并登陆 方法/步骤     到本地项目文件夹右键选择git bash here   输入个人信 ...

随机推荐

  1. 一个MongoDB索引走偏的案例及探究分析

    接业务需求,有一个MongoDB的简单查询,太耗时了,执行了 70S 左右,严重影响用户的体验.. 查询代码主要如下: db.duoduologmodel.find({"Tags.SN&qu ...

  2. jenkins构建,拉取不到最新版本代码,报clock of the subversion server appears to be out of sync

    一.问题描述 今天遇到个问题,我这边提交了代码后,一般会马上去jenkins上点一下,构建到开发环境上. 但是发现修改没生效,后来发现,提交的版本假设是3250,但是jenkins构建使用的版本为32 ...

  3. Slickflow.NET 开源工作流引擎快速入门之一: 简单序列流程代码编写示例

    前言:对于急切想了解引擎功能的开发人员,在下载版本后,就想尝试编写代码,完成一个流程的开发和测试.本文试图从一个最简单的流程来示例说明,如何快速了解引擎代码的编写. 版本: .NETCore 2.1 ...

  4. Add an Editor to a Detail View 将编辑器添加到详细信息视图

    In this lesson, you will learn how to add an editor to a Detail View. For this purpose, the Departme ...

  5. 利用Azure虚拟机安装Dynamics 365 Customer Engagement之八:安装报表扩展及最新更新

    我是微软Dynamics 365 & Power Platform方面的工程师罗勇,也是2015年7月到2018年6月连续三年Dynamics CRM/Business Solutions方面 ...

  6. Dynamics CRM - js中用webapi基于fetchxml查询遇到的问题 -- Invalid URI: The Uri scheme is too long.

    最近用WebApi做基于Fetchxml的查询的时候,遇到一个很蛋疼的报错:Invalid URI: The Uri scheme is too long. 检查了整个URL,也没发现有什么问题. - ...

  7. NumPy数据的归一化

    数据的归一化 首先我们来看看归一化的概念: 数据的标准化(normalization)和归一化 数据的标准化(normalization)是将数据按比例缩放,使之落入一个小的特定区间.在某些比较和评价 ...

  8. Eclipse的Git插件Egit: merge合并冲突具体解决方法

    http://www.cnblogs.com/wavky/p/3504060.html 稍微总结下弄了半个下午的egit的merge合并冲突解决方法,网上看的都是一个模板出来的,看的糊里糊涂,花了很多 ...

  9. 11.JavaCC官方入门指南-例6

    例6:计算器--添加括号.一元运算符和历史记录 1.calculator3.jj   我们只需要再添加一些特色,就可以得到一个可用的四则运算计算器.在这一版的修改中 ,我们将使得程序可以接收括号.负值 ...

  10. linux服务器下oracle开机自启动设置

    1.首先切换到Oracle用户 [oracle@oracletest ~]$ cd /u01/app/oracle/product/11.2.0/db_1/bin/       -----标红字体部分 ...