git理论知识

git的服务器端(remote)端包含多个repository,每个repository可以理解为一个项目。

而每个repository下有多个branch。"origin"就是指向某一个repository的指针。服务器端的"master"(强调服务器端是因为本地端也有master)就是指向某个repository的一个branch的指针。

这是服务器端(remote)的情况:

本地的情况:

而在本地电脑(local)上:"master"就是指向刚刚从remote server传到本地的副本branch。

使用 git add 命令将想要快照的内容写入缓存区,
使用 git commit命令则将缓存区内容添加到仓库中。

也就是说,git add是让文件进入第二个状态(staged),而git commit是让文件进入第三个状态(committed)。顺便git commit -m "xxx"可以提交注释

$git push A B:C     其中A和C是分别remote端的一个repository的名字和branch的名字,B是本地端branch的名字

意思是把本地的B推送到remotes/A/C下。当B=C时可以直接省略为:git push A B。比如:

"git push origin master:master" 可以直接省略为"git push origin master".

origin指向的是repository,且可以有多个不同的(origin2,origin3...),master只是这个repository中默认创建的第一个branch。当你git push的时候因为origin和master都是默认创建的,所以可以这样省略,但是这个是bad practice,当换一个branch再git push的时候,有时候就纠结了

git当前仓库设置

查看当前git用户名: git config user.name

查看当前git邮箱: git config user.email

Git 全局设置:

切换git用户名: git config --global user.name "YOURUSERNAME"

切换git邮箱: git config --global user.email "YOUREMAIL"

示例如下:

git config --global user.name "神经蛙"
git config --global user.email "yanl55555@163.com"
git config --global credential.helper store

创建 git 仓库:

mkdir leetcode-advanced-guide
cd leetcode-advanced-guide
//初始化本地分支名即master
git init
touch README.md// 如果已有项目,则使用git add .
git add README.md //如果已有项目,则使用git add .
//提交注释
git commit -m "first commit"
//origin即远程主机别名
git remote add origin https://gitee.com/yanl55555/test.git
//-u即推送到指定的upstream上流,
//最后面的master即<本地分支名>:<远程分支名>均为master时候的缩写
git push -u origin master

可能的异常:

问题描述:在git bash中键入 $ git push -u origin master 进行提交的时候出现 如下错误:

error: failed to push some refs to

问题原因:远程库与本地库不一致造成的,在hint中也有提示,先把远程库同步到本地库就可以了【先pull一遍再push】。

解决办法:使用命令行:

git pull --rebase origin master

最后一步,输入git push -u origin master,这是把代码上传到github仓库的意思。

等待上传....上传成功

 

git知识点,常用命令的更多相关文章

  1. GIT 版本控制常用命令学习汇总

    GIT 版本控制常用命令汇总 git version 查看当前git版本信息 git help 获取全部命令帮助信息 git help <command> 获取指定命令帮助信息 git c ...

  2. git log 常用命令及技巧

    git log常用命令以及技巧 1.git log 如果不带任何参数,它会列出所有历史记录,最近的排在最上方,显示提交对象的哈希值,作者.提交日期.和提交说明.如果记录过多,则按Page Up.Pag ...

  3. Git基本常用命令

    Git基本常用命令如下: mkdir: XX (创建一个空目录 XX指目录名) pwd: 显示当前目录的路径. git init 把当前的目录变成可以管理的git仓库,生成隐藏.git文件. git ...

  4. Git是什么、Git的功能、为什么versioncontrol用Git、Git的常用命令、Git的优缺点

    Git是什么 git是目前世界上最先进的分布式版本控制系统(没有之一). Git是用于 Linux内核开发的版本控制工具.与常用的版本控制工具 CVS, Subversion 等不同,它采用了分布式版 ...

  5. Git stash 常用命令

    参考: Git: How to look at the stash Git学习笔记05--git stash Git stash 常用命令 1.git stash: 保存当前的工作进度: 2.git ...

  6. Git 基础 —— 常用命令

    Git 基础学习系列 Git 基础 -- 安装 配置 别名 对象 Git 基础 -- 常用命令 Git 基础 -- 常见使用场景 Git基础 -- Github 的使用 git init 创建 Git ...

  7. git之常用命令

    git之常用命令 1.下载远程仓库最新代码 $ git pull --rebase origin master 2.上传代码 $ git push origin master 3.退出编辑 ESC + ...

  8. git的常用命令。。

    git的常用命令.. git help <command>  显示command的help git show  显示某次提交的内容 git show $id git co -- <f ...

  9. Git - Git基本常用命令

    Git基本常用命令 mkdir:         XX (创建一个空目录 XX指目录名) pwd:          显示当前目录的路径. git init          把当前的目录变成可以管理 ...

  10. Git的常用命令记录

    Git的常用命令记录 1.与远程仓库建立连接,即关联一个远程库 git remote add origin git@server-name:path/repo-name.git; 2.查看当前分支  ...

随机推荐

  1. mpi4py和cupy的联合应用(anaconda环境):GPU-aware MPI + Python GPU arrays

    Demo代码: from mpi4py import MPI import cupy as cp comm = MPI.COMM_WORLD size = comm.Get_size() rank = ...

  2. ubuntu23.04/22.04下安装docker engine

    官方网址: https://docs.docker.com/engine/install/ubuntu/ 2023年12月1日更新 -- Ubuntu 23.04 # Add Docker's off ...

  3. 【转载】python的魔法方法———A Guide to Python's Magic Methods

    原文地址: https://rszalski.github.io/magicmethods/ ===================================================== ...

  4. 在线flex布局----自己写的一个flex布局的小玩意,需要的私聊加关注0.0

  5. 屏蔽RaiDrive的广告

    RaiDrive 广告域名:ads.raidrive.com 在 HOSTS 添加 127.0.0.1 ads.raidrive.com 或者在代理中设置为阻止即可. 效果: 补 最新版(2023.9 ...

  6. Linux驱动| Linux内核 RTC时间架构

    上一篇文章我们给大家讲解了基于瑞芯微rk3568平台芯片hym8563驱动的移植,本文给大家详细讲解Linux内核的时间子系统. <Linux驱动|rtc-hym8563移植笔记> 一.L ...

  7. Jetpack架构组件学习(5)——Hilt 注入框架使用

    原文: Jetpack架构组件学习(5)--Hilt 注入框架使用-Stars-One的杂货小窝 本篇需要有Kotlin基础知识,否则可能阅读本篇会有所困难! 介绍说明 实际上,郭霖那篇文章已经讲得比 ...

  8. JavaScript设计模式样例十二 —— 享元模式

    享元模式(Flyweight Pattern) 定义:减少创建对象的数量,以减少内存占用和提高性能.目的:用共享技术有效地支持大量细粒度的对象.场景:系统中有大量对象. // 构建享元对象 class ...

  9. visual studio安装MFC模板

    计算机图形学 奇怪的重点 需要单击选中使用C++的桌面开发 才会跳出右侧的选项 要么就是展开右侧的收缩

  10. ES6之常用开发知识点:字符串的扩展与正则表达式的扩展(三)

    字符串的扩展 codePointAt JavaScript 内部,字符以 UTF-16 的格式储存,每个字符固定为2个字节.对于那些需要4个字节储存的字符(Unicode 码点大于0xFFFF的字符) ...