首页 > 其他分享 >Git

Git

时间:2022-09-04 22:36:35浏览次数:73  
标签:git 仓库 dev Git master 目录 分支

什么是Git

git是一种版本同步工具;实际项目开发中,涉及到多人的团队性质的协同开发;

Git的三种状态

现在请注意,如果你希望后面的学习更顺利,请记住下面这些关于 Git 的概念。 Git 有三种状态,你的文件可能 处于其中之一: 已提交(committed)、已修改(modified) 和 已暂存(staged)。

• 已修改表示修改了文件,但还没保存到数据库中。

• 已暂存表示对一个已修改文件的当前版本做了标记,使之包含在下次提交的快照中。

• 已提交表示数据已经安全地保存在本地数据库中。

这会让我们的 Git 项目拥有三个阶段:工作区、暂存区以及 Git 目录。

名词解析

工作目录: .git目录所在的目录称为工作目录,这个目录中所有的目录及文件都可能会托管到git仓库中存放。工作目录默认位于本地磁盘文件系统。(我们的代码都是写在的工作目录中的,通过git,可以将我们写的代码托管到git仓库中保存。)

暂存区: 当对工作目录中的文件做了修改,删除,添加等一系列操作后,通过git add指令,将此时工作区所作的变更添加到暂存区。通过指令git status检查工作目录和暂存区之间的差异。

仓库: 保存历史提交的版本信息。check out project操作时,能够将仓库中的不同版本还原到工作目录

 

三种状态工作原理

 

 

初始化仓库

创建一个工作目录,进入工作目录,右键git GUI here,在此目录下代码可视化git GUI。

 

通过命令操作git

进入仓库目录,空白处右键->git bash here就能够呼出git shell

推荐使用命令的方式操作git

#配置git用户信息
$ git config --global user.name "用户名"
$ git config --global user.email [email protected]
$ git config --list   #查看git配置
$ git init   #将当前目录作为工作区,生成.git目录;.git目录为git仓库的目录
$ git add file1 file2 #同时将多个文件添加到暂存区,已空格分隔
$ git add ./ #将当前目录下所有变动的文件添加到暂存区
$ git status #使用频率很高的一个命令,用于查看当前暂存区的使用情况
$ git commit -m '提交信息' # 将暂存区中的内容提交到本地仓库
$ git clone url #根据url地址的仓库,克隆到本地
$ git log #查看所有的历史提交信息
$ git log -p -2 #完整的显示两条提交的完整信息,包含提交内容对比
$ git remote add origin url # 添加远程仓库
$ git remote #查看远程仓库名称
$ git remote -v #查看远程仓库的url路径
$ git push -u origin master #将本地仓库状态推送到origin仓库的master分支
  • 初始化空白的仓库

cd ~/DeskTop/working direcotry    # 进入工作目录
git init
Initialized empty Git repository in C:/Users/Administrator/Desktop/working directory/.git/
  • 配置用户信息

git config --global user.name "用户名"
git config --global user.email "邮箱"
git config --list --show-origin     # 查看当前的配置信息
  • 对比当前工作目录与仓库的状态

git status

On branch master   # 当前分支:master

No commits yet

Untracked files:   # 列出所有没有被追踪的文件(工作目录与仓库状态不一致的文件)
(use "git add <file>..." to include in what will be committed) # 建议使用的命令
      a.txt     # 列出发生变化的文件

nothing added to commit but untracked files present (use "git add" to track)
  • 追踪文件,将变更添加到暂存区

git add 文件名1 文件名2 文件名n  # 追踪具体的文件
git add .   # 追踪所有有变动的文件
  • 提交暂存区,将变更持久化到git仓库

git commit   # 在内置的vim中编辑提交日志
git commit -m "提交日志"

远程仓库

  • 新建空白仓库

 

  • 在本地仓库中添加远程仓库

git remote add origin https://gitee.com/cqhxzy_nick/hxzy_dt.git
  • 查看远程仓库的名称以及url地址

git remote -v
origin https://gitee.com/cqhxzy_nick/hxzy_dt.git (fetch)
origin https://gitee.com/cqhxzy_nick/hxzy_dt.git (push)
  • 将本地仓库的代码推送到远程仓库

git push -u origin master
  • 将远程仓库的变更同步到本地仓库

git pull
git log # 能够看到本次同步到底更新了什么

分支

利用多分支进行协同开发,主分支master通常保留稳定的代码,其他分支用于开发或者调试。

  • 创建分支

git branch dev   #创建dev分支
  • 查看所有的分支信息

git branch -v
  • 切换分支

git checkout dev   #切换到dev分支

在dev分支下进行的开发,并不会影响主分支master,通过merge合并之后,就能够将dev下的变动合并到master

git checkout master    #切换到主分支
git merge dev         #当前在master分支,合并dev,将dev分支中的内容合并到当前的master分支
  • 将dev分支的内容推送到远程仓库

git push origin dev
  • 删除指定分支

git branch -d|D hotfix   #D意思为:hotfix中如果有没有合并的内容,也会强制删除
 

标签:git,仓库,dev,Git,master,目录,分支
From: https://www.cnblogs.com/huang2979127746/p/16656349.html

相关文章

  • Git使用
    git命令的使用#配置git用户信息$gitconfig--globaluser.name"用户名"[email protected]$gitinit #将当前目录作为工作区,生成.......
  • git tag
    aliases:[git标签]tags:[git,blog]link:官方文档date:2022-09-04简介gittag用于git标签的相关操作。具体详情可查看文首link的官方文档。常用命令参数查看......
  • git ignore忽略规则
    aliases:[gitignore]tags:[git,blog]link:date:2022-09-04目录aliases:[gitignore]tags:[git,blog]Git忽略文件提交的方法Git忽略规则Git忽略规则优先级Gi......
  • Git和gitee的使用(二、入门篇)
    一、准备工作Git的下载以及gitee的注册。Git下载链接:https://git-scm.com/downloads注:按照默认选项进行安装就ok。gitee官网:https://gitee.com/注:按照提示进行注册。......
  • git 重写历史
    aliases:[]tags:[git,blog]link:date:2022-08-30目录aliases:[]tags:[git,blog]git重写历史提交信息修改最新log修改多个提交信息参考链接git重写历史提交信......
  • 代码上线gitlab
      需要更改的配置[root@Gitlab200/etc/gitlab]#grep-n"^[a-Z]"gitlab.rb13:external_url'http://gitlab.oldboy.com'52:gitlab_rails['gitlab_email_enabled']......
  • Hexo + GitHub Pages 搭建博客
    前言:HEXO是一个快速、简洁且高效的博客框架,GitHubPages是GitHub提供的一个网页寄存服务,可用于存放静态网页,包括博客、项目文档甚至整本书。前提:注册GitHub教......
  • 详述 GitHub 中声明 LICENSE 的方法
    当我们在GitHub浏览一些开源项目时,我们经常会看到这样的标志:如上图所示,Apache-2.0,我们可以将其称之为开源许可证,那么到底开源许可证是什么呢?开源许可证即授权条款。......
  • 详述 Git 的 rebase 命令使用方法
    在基于Git的开发过程中,我们很容易遇到合并代码的情况,例如我们从master分支拉取了一个feature分支,当我们开发到一段时间之后,可能需要将master的代码合并到我们当前......
  • Git使用出现[email protected] Permission denied publickey. 处理
    Git使用出现[email protected]:Permissiondeniedpublickey.处理进入gitbash界面然后:第一步,gitconfig--global--list验证邮箱与GitHub注册时输入的是否一致第二步......