git下载地址:

https://git-scm.com/download

mac 直接使用brew下载brew install git

1Git一般工作流程:

1、在工作目录创建版本库

2、在工作目录中操作文件

3、将需要进行版本管理的文件放入暂存区域

4、将暂存区域的文件提交到 Git 仓库

5、Git本地仓库文件推送到git远程仓库(github、gitee等)

Git 管理的文件有三种状态:

已修改(modified)

已暂存(staged)

已提交(committed)

2进行初始化配置:

git config --global user.name "用户名"

git config --global user.email "邮箱"

版本库介绍&创建:

一般把版本库也叫仓库(repository),其实我们可以简单的把它看成一个目录,只不过目录里面的文件都会由 Git 进行管理,当我们对文件进行修改、删除、Git 都可以对其进行跟踪,或者在将来某个时刻还可以将文件“还原”。

3 git创建版本库步骤:

1、创建一个空目录,如 d:\git_repository

2、进入到命令窗口,切换到该目录,输入git init 命令即创建完成

3、使用dir查看可以看到文件夹内部多了一个 .git的隐藏文件夹

git log --pretty=oneline

git config --global --edit

git commit --amend --reset-author

4 撤销操作:

1、手动修改test_01.py文件,增加一行内容为print('test04'),发现添加有误

2、撤销修改操作方式有多种:

2.1 直接手动去更改文件,使用git add * 添加到暂存区,git commit 提交

2.2 使用命令 git reset --hard HEAD^ 回复到上一个版本

2.3 使用命令 ,进行撤销操作,该命令的含义是表示拉取暂存区文件,并将其替换工作区文件

5删除操作:

删除一般分为两种操作方式:

方式一:命令删除

1、手动新增一个test02.py文件,内容为print('test02');

2、使用git add * 、git commit 进行提交到版本库;

3、通过命令 git rm test02.py 进行删除操作;此操作会删除工作区的文件并同步添加到暂存区

4、通过命令git commit提交到版本库

备注:如果做完步骤三需要撤销删除,先执行命令git reset HEAD test02.py,再执行命令git checkout -- test02.py

git reset HEAD test02.py   把暂存区的更新还原成上一次的,即有test02的时候,变红

git checkout -- test_02.py  把暂存区还回去仓库

方式二:手工删除

1、手动新增一个test02.py文件,内容为print('test02');

2、使用git add * 、git commit 进行提交到版本库;

3、在工作区手工删除test02.py文件

4、使用命令 git add -A 把工作区的所有变化提交到暂存区

5、通过命令git commit提交到版本库

备注:如果做完步骤三需要撤销删除,可以通过命令 git checkout -- test02.py找回

六、重命名操作:

重命名文件和删除文件操作类似,也分为两种操作方式

方式一:命令重命名

1、手动新增一个test03.py文件,内容为print('test03');

2、使用git add * 、git commit 进行提交到版本库;

3、通过命令 git mv test03.py test3.py 进行重命名操作

4、通过命令git commit提交到版本库

备注:如果做完步骤三需要撤销重命名,先执行命令git reset HEAD test03.py,再执行命令git checkout -- test03.py ,此时不需要使用git rm删除,因为git reset操作已把暂存区的记录恢复到工作区,然后使用命令git rm -r --cached test3.py,把暂存区的文件信息删除,最后手工删除test3.py

git checkout -- test03.py  例如:

方式二:手工重命名

1、手动新增一个test03.py文件,内容为print('test03');

2、使用git add * 、git commit 进行提交到版本库;

3、在工作区手工重命名test03.py为test3.py;

4、使用命令git add -A 把工作区的所有变化提交到暂存区;

5、通过命令git commit提交到版本库

备注:如果做完步骤三需要撤销重命名,可以通过命令 git checkout -- test03.py找回,然后在工作区手工删除test3.py文件

关注工作区和暂存区的状态仓库是可以同步到暂存区的

 

七、修改最后一次提交操作:

版本刚一提交(git commit)到仓库,发现注释写错或少提交了部分文件,此时需要修正这次提交的内容,把这样的操作称为修改最后一次提交操作。

操作如下:

1、手动新增一个test04.py文件,内容为print('test04')

2、使用git add * 、git commit -m “新增test05.py代码” 进行提交到版本库

3、使用命令 git commit --amend -m "新增test04.py代码" ,把最后一次提交的注释进行修改,--amend 选项的 commit 命令(即git commit --amend)git 会“更正”最近的一次提交。

4、再次新增一个文件test05.py文件,内容为print('test05');

5、使用git add *命令添加到暂存区

6、使用命令 git commit --amend -m "新增test04.py\test05.py代码" 把test05.py也置入最后一次提交的版本中

备注:过程中可以使用git log 查看日志

git clean:从工作目录中删除没有被git跟踪过的文件,它包含如下参数:

-n 提示哪些文件会被删除

-f  删除当前目录下所有没有跟踪过的文件. 它不会删除.gitignore文件里面指定的文件夹和文件

-f <path> 删除指定目录下所有没有跟踪过的文件

-df 删除当前目录下所有没有跟踪过的文件和文件夹

-xf 删除当前目录下所有没有跟踪过的文件,包含.gitignore文件中设置的文件

git文件操作的更多相关文章

  1. git初体验(二)基础git文件操作

    文件操作续 忽略一些文件 只需在主目录下建立".gitignore"文件,注意新建的是文件而非文件夹,在win窗口中不能建立以.开头的文件,只能在dos下: E:\knowcars ...

  2. [git] 文件操作

    文件操作 1.  git  add 1.1 将未被git管理的文件添加到暂存区 一次可添加多个文件 文件夹,中间用空格隔开 git  add  文件/文件夹  文件/文件夹 再次执行 git  sta ...

  3. 本地Git项目搭建和文件操作

    Git项目搭建 git init ---在该文件夹下进入cmd/terminal git clone [url] ---克隆远程仓库到本地 Git文件操作 文件的四种状态: · Untracked:未 ...

  4. git的忽略文件和删除文件操作

    1 删除工作区和暂存去的a文件$ git rm a 2只删除暂存去的 a文件,a文件就不被跟踪了.可以执行git add a从新添加回暂存去$ git rm --cached a 3 git mv 操 ...

  5. git中的文件操作

    现在我们的机器上有了一个 真实项目 的 Git 仓库,并从这个仓库中检出了所有文件的 工作副本. 通常,你会对这些文件做些修改,每当完成了一个阶段的目标,想要将记录下它时,就将它提交到仓库. git中 ...

  6. Git:文件操作和历史回退

    目录 创建仓库 创建文件/文件夹 修改文件/文件夹 回到修改前的版本 撤销修改 删除文件 工作区.暂存区.版本区 创建仓库 创建新文件夹:mkdir learngit 进入:cd learngit l ...

  7. Git远程操作详解

    Git是目前最流行的版本管理系统,学会Git几乎成了开发者的必备技能. Git有很多优势,其中之一就是远程操作非常简便.本文详细介绍5个Git命令,它们的概念和用法,理解了这些内容,你就会完全掌握Gi ...

  8. Git远程操作

    Git远程操作 // */ // ]]>   Git远程操作 Table of Contents 1 Git远程命令概览 2 Git远程仓库与本地仓库的关系图 3 git clone 4 git ...

  9. Android数据存储-文件操作

    一.预备知识 1.Android中的MVC设计模式 MVC (Model-View-Controller):M是指逻辑模型,V是指视图模型,C则是控制器.一个逻辑模型可以对于多种视图模型,比如一批统计 ...

随机推荐

  1. 实战演习:mysqlbinlog恢复bin-log数据

    mysqlbinlog恢复bin-log数据 Binlog日志即binary log,是二进制日志文件,有两个作用,一个是增量备份,另一个是主从复制,即从节点同步主节点数据时获取的即是bin-log, ...

  2. Jmeter(2)基础知识

    一.Jmeter测试计划 1.测试计划用来描述一个性能/接口测试的脚本和场景设计 独立运行每个线程组:用于控制测试计划中的多个线程组的执行顺序.不勾选时,默认各线程组并行.随机执行. 主线程结束后运行 ...

  3. easyui textbox validatebox 默认显示tip提示

    easyui验证是不显示tip提示的,验证不通过时只将输入框变红,要触发一个mouse(鼠标放上去)的事件才会显示tip. 现在想要验证不通过时直接显示提示,给用户更加直观的错误提示. 找到源代码中验 ...

  4. GET和POST的区别与联系

    每日知识-GET和POST HTTP:超文本传输协议 组成部分:请求行,请求头部,一个空行,请求数据 GET和POST GET:get就是获取的意思,默认的HTTP请求方式,把参数通过 key/val ...

  5. 迭代 可迭代对象 迭代器的bj

    1.迭代的概念 迭代是重复反馈过程的活动,其目的通常是为了逼近所需目标或结果.每一次对过程的重复称为一次"迭代",而每一次迭代得到的结果会作为下一次迭代的初始值. 2.可迭代对象 ...

  6. 多图详解Go的互斥锁Mutex

    转载请声明出处哦~,本篇文章发布于luozhiyun的博客:https://www.luozhiyun.com 本文使用的go的源码时14.4 Mutex介绍 Mutex 结构体包含两个字段: 字段s ...

  7. 开源项目葫芦藤:IdentityServer4的实现及其运用

    目录 前言 签名证书(Signing Credential) 客户端存储(Client Store) 资源存储(Resource Store) 持久化授权存储(Persisted Grant Stor ...

  8. Blogs禁止页面选中复制功能

    说明:只需要在博客侧边栏公告(支持HTML代码) (支持 JS 代码)里面添加如下代码 /* 在页面定制 CSS 代码处添加如下样式 */ html,body{ moz-user-select: -m ...

  9. 安装篇四:安装NGINX(1.4.0版本)

    #1.NGINX安装 1.安装文件上传软件 [root@TEST ~]# yum install lrzsz –y <---拖拽文件 2.检查软件安装的系统环境 [root@TEST ~]# c ...

  10. python初学者-商品折扣问题

    x = int(input("x=")) if x < 1600 : #如果x小于1600,y等于0 y = 0 #没有折扣 print("应付款:",x ...