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. vue之父组件与子组件

    1.背景 2.简单使用 <!DOCTYPE html> <html lang="en"> <head> <meta charset=&qu ...

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

  3. SMU Summer 2023 Contest Round 15

    SMU Summer 2023 Contest Round 15 A. AB Balance 其实就只会更改一次 #include <bits/stdc++.h> #define int ...

  4. 高性能无锁队列 Disruptor 核心原理分析及其在i主题业务中的应用

    作者:来自 vivo 互联网服务器团队- Li Wanghong 本文首先介绍了 Disruptor 高性能内存队列的基本概念.使用 Demo.高性能原理及源码分析,最后通过两个例子介绍了 Disru ...

  5. 颗粒流 + Janssen 定律 + Bagnold 数

    对于 \(n\) 个球,易得有 \[\begin{array}{c} \displaystyle\frac\pi2>\theta_i>-\frac\pi2,\theta_1>\cdo ...

  6. XSS 基本概念和原理介绍

    XSS 基本概念和原理介绍 基本概念 跨站脚本攻击 XSS(Cross Site Scripting),为了不和层叠样式表 ( Cascading Style Sheets,CSS ) 的缩写混淆,故 ...

  7. redux开发中的一个小坑

    redux的actiontypes,不可以重名,重名将会报错 When called with an action of type "inserttoken", the slice ...

  8. Dev-C++ 安装教程

    下载地址:https://sourceforge.net/projects/orwelldevcpp/ 下载完成,在指定的下载位置有一个安装包: 双击开始安装程序 安装是默认英文安装即可,在启动后可以 ...

  9. python项目生成exe

    前言 做了个python的小项目,需要打包为桌面端的exe使用,结果一打包,体积直接上百兆了,研究了下,使用虚拟环境打出的包会更干净小巧. 安装anaconda anaconda用作python的虚拟 ...

  10. plotly dash

    https://community.plotly.com/t/callback-on-graph-slider-change-which-property-to-use-as-input/33979/ ...