Git常用命令

创建Git版本库

git init [目录]#创建目录版本库, 不写的话是当前目录

该命令会在目录中创建一个名为.git的隐藏目录

文件提交

  1. 添加文件:
git add 文件名 #添加到下次commit提交的文件

已经管理过的文件可以使用 git add -u提交代码,这样就不用再写文件名了

git status #使用 git status检查状态:

On branch master

No commits yet

Changes to be committed

  1. 提交的代码

    git commit -m '注释' # 提交目录下的所有add的代码

使用 git log 可以查看提交的记录

查看状态

git status
git diff 文件名 # 查看被修改改的行,

变更文件名

有这样一个需求我们需要把test.txt改成test.md提交:

执行git commit

报一下错误:

On branch master

Changes not staged for commit:

deleted: test.txt

Untracked files:

test.md

no changes added to commit

意思是先要把test.txt删除,然后再提交test.md

方式一:

  1. 提交更改后的文件

    git add test.md
  2. 删除老文件

    git rm test.test

方式二 :

git mv test.txt test.md # 这种方法给简单

查看git状态:

git status

On branch master

Changes to be committed:

(use "git reset HEAD ..." to unstage)

​ renamed: test.txt -> test.md

意思为test.txt重命名为test.md

查看历史记录

使用命令查看:

git log [--oneline] # 简洁的看历史记录

--onelline : 简洁的查看历史记录

-n数字: 查看最近的历史记录

--all : 查看所有版本分支的版本历史

--graph: 查看整个仓库

查看详细信息:

git show commit号 # commit号可以是一部分

从本地仓库中撤销代码

  • 撤销已提交的代码
git reset --soft HEAD #撤销已经commit的代码

--soft 比较柔和的撤销

HEAD 撤销最近一次提交, 也可以这样写:HEAD~1

  • 将文件移出暂存区

    git reset HEAD 文件名

这个撤销请谨慎使用, 因为你可能把别人的代码删掉

  • 取消add的代码

git checkout -- .\test.md

使用图形化界面查看

gitk # 在工作目录执行

删除文件

先删除本地文件

再使用命令:

git rm 文件名
git commit -m '删除多余文件'

忽略配置文件

在仓库根目录创建 .gitignore文件

在里面配置: *.txt

分支

git  branch  分支名称 #为当前提交创建分支
git branch 分支名称 commit hash#为指定前提交创建分支
git branch #查看分支
git branch -d 分支名称# 删除分支
git checkout 分支名称 #切换分支
git checkout -b 分支名称 #创建并切换分支

git checkout master #切换到主干
git merge 目标分支 #将目标分支合并到当前所在分支

注意切换分支前要先commit修改

将代码推到远程仓库

git push -u origin master# 将本地master分支传递到远程master上

origin 指GitHub

从远端获取代码

git clone  git@github.com:liuyanqing1023/xcEduService.git

协同工作需常用的命令

  • commit, 提交代码
  • pull,更新代码
  • push,往远程推送代码

git目录

git仓库里有个.git文件夹

HEAD 存放当前仓库正在工作的分支

refs

​ heads : 分支

​ tags : 标签给commit打标签

objects : 放的是对象

切换分支命令: git checkout master

Git对象直接的关系

有三种对象: commit, tree blob

一次提交就是一个commit

提交的树形文件夹叫做tree

文件叫做blob, 只要文件名想通就是一个blob

  1. 设置仓库级别的配置:

    #设置仓库级别的配置,当然这个配置不是必须的
    git config --local user.name 'admin01' #设置用户名
    git config --local user.email '395994482@qq.com'#设置email
    #在仓库中使用: git config --local --list 检查是否创建成功

    配置的原则是,范围小的有限范围大的

历史库和暂存区

执行 git add files 把代码放到待提交列表(暂存区)

执行 git commit 把代码放到本地仓库(工作区)

执行git push把代码放到远程仓库


**** 码字不易如果对你有帮助请给个关注****

**** 爱技术爱生活 QQ群: 894109590****

从0开始学Git——Git的常见操作的更多相关文章

  1. git版本控制系统常见操作总结

    简介 Git是强大的版本控制系统,主要功能是针对代码.配置文件等文本进行版本控制.备份等,同时个人认为还是分发代码的一个不错的方式. 常见用法 #创建远程git仓库 [root@test88 ~]# ...

  2. 从0开始学Git——Git的协同操作

    环境: test_git 目录下有个my-project 版本库 所有命令都在test_git目录下执行 本地协同操作 从远端仓库检出代码,或者克隆一个已有的版本库 拷贝一个已有的仓库 #格式: gi ...

  3. Git分支管理及常见操作

    众所周知,使用Git分支,我们可以从开发主线上分离开来,然后在不影响主线的同时继续工作. 既然要使用Git分支,这里就涉及到Git分支的管理及常见操作,如列出分支,分支的创建,分支的删除,分支的合并等 ...

  4. react-native 常见操作 及 git 补充

    一. react-native 常见操作 1.创建项目 react-native init Market(项目名称,首字母大写) 2.安装常用插件 npm install react-native-t ...

  5. Git学习之常见错误 git push 失败

    Git学习之常见错误 git push 失败 问题描述: git push Counting objects: , done. Delta compression using up to thread ...

  6. Git学习之常见错误 clone被拒绝

    Git学习之常见错误 问题: git clone 时 报错 Permission Denied (权限被拒绝). 解决方法: 需要把本地的公钥上传到服务器. 解决步骤: ①第一步,设置本地的git的用 ...

  7. BladeX 2.0.7.RELEASE版本git后,在idea中导入项目,结果无法运行FlowApplication等几个服务的错误

    问题:2.0.7.RELEASE版本git后,在Intellij IDEA运行项目,结果无法运行FlowApplication等几个服务的错误 描述:打开IDEA,点击Check out from V ...

  8. git常见操作和指令

    1.指令集 1.1 本地与远程操作 创建文件 echo > README.md(文件名) 创建文件时输入信息 echo "(message)" >> README ...

  9. git常见操作总结

    git config --global user.name "liyang"git config --global user.email "liyangslj@126.c ...

  10. 如何从 0 开始学 ruby on rails (漫步版)

    如何从 0 开始学 ruby on rails (漫步版) ruby 是一门编程语言,ruby on rails 是 ruby 的一个 web 框架,简称 rails. 有很多人对  rails 感兴 ...

随机推荐

  1. 《VR入门系列教程》之18---Oculus代码剖析

    代码剖析 原文作者:Tony Parisi     那么,Unity究竟是如何支持Oculus VR运行的?首先,我们来看看Unity场景是如何构建的.在Unity集成开发包中有一个相机预设体,这个预 ...

  2. java练习---11

    package cn.lyhh; class Person{ private String name; private int age; static String city = "A城&q ...

  3. Unity3D热更新之LuaFramework篇[08]--热更新原理及热更服务器搭建

    前言 前面铺垫了这么久,终于要开始写热更新了. Unity游戏热更新包含两个方面,一个是资源的更新,一个是脚本的更新. 资源更新是Unity本来就支持的,在各大平台也都能用.而脚本的热更新在iOS平台 ...

  4. IBM RAD中集成Websphere启动后无法debug解决办法

    问题描述: IBM Rational Application Developer for WebSphere软件在启动WebSphere的时候无法以debug模式启动,debug启动后显示为start ...

  5. java多线程核心api以及相关概念(一)

    这篇博客总结了对线程核心api以及相关概念的学习,黑体字可以理解为重点,其他的都是我对它的理解 个人认为这些是学习java多线程的基础,不理解熟悉这些,后面的也不可能学好滴 目录 1.什么是线程以及优 ...

  6. vue教程二 vue组件(2)

    每个组件都可以有自己的data.methods.computed和您之前看到的所有内容—就像Vue实例本身一样. 您可能已经注意到了组件和Vue实例之间的一个细微差别:Vue实例上的数据属性是一个对象 ...

  7. Java匹马行天下之J2EE框架开发——Spring—>Spring框架知多少

    ————也许我注定成不了一个伟大的人,但是至少我可以做一个很棒的自己.我想我现在应该做的不是瞻前顾后,而是活在当下,正确认知自己,做好自己现在的工作,努力提升自己的能力,踏踏实实地做一个程序员 一.思 ...

  8. wpf界面按钮自动点击

    Button Button = new Button();Button.RaiseEvent(new RoutedEventArgs(Button.ClickEvent));//在按钮生成时便会自动触 ...

  9. 字符串(String、StringBuffer、StringBuilder)进阶分析

    转载自https://segmentfault.com/a/1190000002683782 我们先要记住三者的特征: String 字符串常量 StringBuffer 字符串变量(线程安全) St ...

  10. Python基础编程 内置函数

    内置函数 内置函数(一定记住并且精通) print()屏幕输出 int():pass str():pass bool():pass set(): pass list() 将一个可迭代对象转换成列表 t ...