美文网首页
Git基础知识

Git基础知识

作者: Serenity那年 | 来源:发表于2018-10-28 21:32 被阅读18次
一、命令行的演示

1.初始化一个代码仓库

  • git init

2.如果使用git,必须给git配置用户名和邮箱
给当前的git仓库配置用户名和邮箱

给git配置全局的用户名和邮箱

备注:如果既有当前配置又有全局配置,会优先使用当前配置,如果没有当前配置,会使用全局配置;

3.初始化项目

  • touch README.md :创建README.md
  • open README.md :打开README.md文件
  • git add README.md :将README.md 添加到暂缓区;也就是将工作区中修改过的文件或新添加的文件添加到暂缓区
  • git commit -m "描述“ :将暂缓区的所有内容提交到本地版本库,清空暂缓区
  • git add . :将在工作区的所有不在暂缓区的所有的内容添加到暂缓区;git 一般不使用星号作为通配符,一般使用点‘.’;

注意:添加的文件或者修改的文件都要通过add命令将该文件添加到暂缓区;

4.查看文件状态

  • git status

备注:
1.红色:该文件被添加或者被修改,但是没有添加到git的暂缓区
2.绿色:该文件在在暂缓区,但是没有提交到本地版本库

5.给命令行起别名

  • git config alias.st "status" :给查看状态的status的命令起别名
  • git config alias.ci "commit -m " :给他commit -m 起别名为ci,用的时候直接 git ci "描述“ 即可
  • git config --global alias.st "status" :全局配置status的别名

6.删除文件

  • git rm README.md :删除README.md文件

7.查看版本信息

  • git log :版本号是有sha1算法生成的40位哈希值,查看正常的版本信息;
  • git reflog :可以查看到所有版本回退的信息;

8.版本回退
一种是:本地写了东西,但是没有提交(指的是没有进行过commit命令),可以使用下面的命令直接回退;也就是放弃所有没有提交过的修改;

  • git reset --hard HEAD :回到当前版本(HEAD)就是git的指针;

一种是:写过的东西,已经提交了,使用如下命令:

  • git reset --hard HEAD^:回到上一个版本
  • git reset --hard HEAD^^:回到shag上上个版本
  • git reset --hard HEAD~100:回到前100个版本
  • git reset --hard 版本号(前5位:重复了就6位,依次类推):回到指定的版本号(git reflog得到的版本号);

提示:在git中,版本号是一个由SHA1生成的哈希值

版本回退的操作顺序:
1.git reset --hard HEAD^ :回到上一个版本(A角色)
2.git push -f :A角色强制上传到共享版本库
3.git reset --hard HEAD^ :回到上一个版本(B角色)
4.git pull :B角色再拉下代码,才真正的回退
注意:如果多人开发,想要版本真正的回退,必须合作,必须多人同时回退

9.给log起别名

10.git的工作区-Working directory
仓库文件夹里除.git目录以外的内容;也就是.git的同级目录及同级目录的子目录都是git的工作区,不包裹.git目录;

11.git版本库-Repository
就是.git目录,用于存储记录版本信息;

  • 暂缓区-stage
  • 分支-master:git会自动创建的第一个分支就是master分支;
  • HEAD指针:用于指向当前分支;
二 共享版本库
  • git服务器的搭建非常繁琐(Linux)
  • 可以把代码托管到github/OSChain
  • 一个文件夹
  • 一个U盘

1.一个文件夹作为共享版本库

  • git init --bare :(看到配置里面的config文件,bare=true;且里面无.git文件夹)

2.将共享版本库的所有内容下载到本地的一个文件夹(称为文件夹A)

  • git clone 克隆共享文件夹的地址

3.在文件夹A中创建忽略文件----svn是先创建项目,再创建忽略文件;git是在先创建忽略文件,在初始化项目;

  • touch .gitignore :在工作区中创建此文件
  • git add .
  • git commit -m "添加.gitignore文件"

4.创建项目
将创建的新项目的地址放在2中项目的文件夹A

三 现有项目 再添加版本控制

1.先创建一个代码仓库(比如在GitHub上创建)
2.git clone 上述创建的仓库地址 :clone远程仓库到本地文件夹A中
3.直接把存在的项目拖到文件夹A中
4.git add .
5.git commit -m "描述"

  1. git push [远程主机名] [本地分支名]:[远程分支名]

四 错误修改

  • 4.1 git pull 失败 ,提示:fatal: refusing to merge unrelated histories

在进行git pull 时,添加一个可选项:git pull origin master --allow-unrelated-histories

  • 4.2 git中Please enter a commit message to explain why this merge is necessary,Please enter a commit message to explain why this merge is necessary.解决方案如下:

请输入提交消息来解释为什么这种合并是必要的

image

git 在pull或者合并分支的时候有时会遇到这个界面。可以不管(直接下面3,4步),如果要输入解释的话就需要:

1.按键盘字母 i 进入insert模式

2.修改最上面那行黄色合并信息,可以不修改

3.按键盘左上角"Esc"

4.输入":wq",注意是冒号+wq,按回车键即可

五、关联远程分支

git remote add origin git@github.com:git_username/repository_name.git

相关文章

  • Git资料集

    Git这些高级用法,喜欢就拿去用 Git基础知识 Git廖雪峰 猴子都能懂的Git入门 git tag常用操作

  • GIT撤销修改总结

    GIT基础知识 主要名词如下: stage: 暂存区 master: 主分支 版本库: git自动生成的.git文...

  • git 常用命令

    在介绍Git“反悔”操作之前,先简单提及下Git的一些基础知识。 Git项目有3个区域:工作区、暂存区和Git仓库...

  • 9. 多人协作和版本管理

    知识基础 Git基础知识 代码可参照Example_3 学习目标 用Git进行自动化脚本的版本管理 用Git保证团...

  • Git | git基础知识

    一、Git基础知识 Git是一个开源的分布式版本控制系统 传统场景:出现内容覆盖 Git:更新历史会保存在git上...

  • 我对git和sourcetree的使用

    先去熟悉一波git和sourcetree的基础知识。 然后就开始我的git和sourcetree之旅: 几个概念先...

  • git简简单单

    基础知识 Git最初由Linus Torvalds(Linux之父)于2005年花了两周时间开发而成。git是一个...

  • Git 基础知识

    一、Git 工作流程图 这张图完全体现了Git 管理流程,先来看下Workspace(工作区)、Index / S...

  • Git基础知识

    配置SSH设置个人信息,git config --global user.name "2ge",git confi...

  • Git基础知识

    一、命令行的演示 1.初始化一个代码仓库 git init 2.如果使用git,必须给git配置用户名和邮箱给当前...

网友评论

      本文标题:Git基础知识

      本文链接:https://www.haomeiwen.com/subject/hurgrxtx.html