目录

一、安装Git

二、创建ssh key、配置git

三、Git本地仓库与远程仓库关联

四、Git本地分支和远程分支关联

五、合并分支到master上

六、Git新建分支出现fatal: Not a valid object name: ‘master‘错误


一、安装Git

MAC 上安装Git主要有两种方式:通过homebrew安装(这种方法比较好)或者通过xcode安装

首先查看电脑是否安装Git,终端输入:

git

安装过则会输出:

WMBdeMacBook-Pro:~ WENBO$ git
usage: git [--version] [--help] [-C <path>] [-c name=value][--exec-path[=<path>]] [--html-path] [--man-path] [--info-path][-p | --paginate | --no-pager] [--no-replace-objects] [--bare][--git-dir=<path>] [--work-tree=<path>] [--namespace=<name>]<command> [<args>]These are common Git commands used in various situations:start a working area (see also: git help tutorial)clone      Clone a repository into a new directoryinit       Create an empty Git repository or reinitialize an existing onework on the current change (see also: git help everyday)add        Add file contents to the indexmv         Move or rename a file, a directory, or a symlinkreset      Reset current HEAD to the specified staterm         Remove files from the working tree and from the indexexamine the history and state (see also: git help revisions)bisect     Use binary search to find the commit that introduced a buggrep       Print lines matching a patternlog        Show commit logsshow       Show various types of objectsstatus     Show the working tree statusgrow, mark and tweak your common historybranch     List, create, or delete branchescheckout   Switch branches or restore working tree filescommit     Record changes to the repositorydiff       Show changes between commits, commit and working tree, etcmerge      Join two or more development histories togetherrebase     Reapply commits on top of another base tiptag        Create, list, delete or verify a tag object signed with GPGcollaborate (see also: git help workflows)fetch      Download objects and refs from another repositorypull       Fetch from and integrate with another repository or a local branchpush       Update remote refs along with associated objects'git help -a' and 'git help -g' list available subcommands and some
concept guides. See 'git help <command>' or 'git help <concept>'
to read about a specific subcommand or concept.

1、通过homebrew安装Git

  • 未安装homebrew,需安装homebrew
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
  • 安装git
brew install git

2、通过Xcode安装

直接从AppStore安装Xcode,Xcode集成了Git,不过默认没有安装,你需要运行Xcode,选择菜单“Xcode”->“Preferences”,在弹出窗口中找到“Downloads”,选择“Command Line Tools”,点“Install”就可以完成安装了。

二、创建ssh key、配置git

  • 设置username和email(github每次commit都会记录他们)
git config --global user.name "abbey_lian"
git config --global user.email "abbey_lian@icloud.com"
  • 通过终端命令创建ssh key
ssh-keygen -t rsa -C "abbey_lian@icloud.com"

abbey_lian@icloud.com是我的邮件名,回车会有以下输出

由于这里我原来已经创建过,这里我选n,没有创建过的,会要求确认路径和输入密码,我们这使用默认的一路回车就行。成功的话会在~/下生成.ssh文件夹,进去,打开id_rsa.pub,复制里面的key。终端查看.ssh/id_rsa.pub文件

cat .ssh/id_rsa.pub
  • 3、登录GitHub(默认你已经注册了GitHub账号),添加ssh key,点击Settings-New SSH key,如图

添加key,如图

  • 4、链接验证
ssh -T git@github.com

第一场登陆会出现如下弹框,要求输入密码

终端输出结果,说明已经链接成功。

三、Git本地仓库与远程仓库关联

1、前提条件

1)本地一个仓库:本地仓库已经经过git init 初始化

2)远程一个仓库:已经存在了一个远程的仓库

3)GitHub已经添加了SSH Keys

2、建立远程与本地仓库的关联

本地仓库与远程仓库关联有两种方法,一种是通过IDE(比如idea、pycharm等)关联远程仓库;一种是通过git bash 添加;

1)通过IDE添加(以idea为例)

添加远程仓库的ssh地址

输入ssh密码

2)通过git bash添加

使用 git remote add 在本地添加远程仓库的关联,git remote add [远程分支名] [远程仓库ssh地址]

git remote add origin git@github.com:Barry-Manilow/myblog.git

使用git remote -v查看能使用的远程命令 ,如图,则表示已经关联好了。

四、Git本地分支和远程分支关联

功能 命令 备注
创建分支(需要先进入仓库目录)

git branch develop

 
查看本地分支 git branch

注:名称前面加* 号的是当前的分支

查看远程分支 git branch -a
切换分支 git checkout branch_name  
删除本地分支 git branch -d branch_name  
删除远程分支 git branch -r -d origin/branch-name     
如果远程新建了一个分支,本地没有该分支 git checkout --track origin/branch_name 这时本地会新建一个分支名叫 branch_name ,会自动跟踪远程的同名分支 branch_name
如果本地新建了一个分支,远程没有该分支 git push --set-upstream origin branch_name 这样就可以自动在远程创建一个 branch_name 分支,然后本地分支会 track 该分支。后面再对该分支使用 push 和 pull 就自动同步。
如果只想与远程分支关联,而不想新创建远程分支 git branch --set-upstream-to=origin/远程分支名 本地分支名 如果使用这个命令时,提示没有远程分支(实际有),可以先使用git fetch命令更新本地分支缓存,然后再执行该命令

五、合并分支到master上

首先切换到master分支上

git  checkout master

如果是多人开发的话 需要把远程master上的代码pull下来

git pull origin master

然后我们把dev分支的代码合并到master上

git merge dev

然后查看状态

git status

六、Git新建分支出现fatal: Not a valid object name: ‘master‘错误

今天在idea中将本地仓库与远程仓库关联起来后发现创建新分支功能是灰色的在git bash中用branch创建分支时,出现以下错误:

原因是没有提交一个文件,要先add一个文件并commit之后才会真正建立master分支,此时才可以建立其它分支。

再次打开idea创建分支,已经可以创建

git安装、使用及常见报错相关推荐

  1. GROMACS的安装以及部分常见报错

    开始安装之前需要准备一些东西(这些的具体安装方式下面会讲的,不过喜欢自己配置环境的话也可以手动捣鼓): 1.可以运行的Linux机器(下面说明用到的都是Centos 7.x的版本,另外我用到的是阿里云 ...

  2. Git常见报错及解决方法

    git常见报错解决方法 1.warning: LF will be replaced by CRLF in .idea/workspace.xml. git config --global core. ...

  3. docker安装mysql及相关配置、运行细节和常见报错解决方案

    安装.运行 需要特别注意-v挂载到本机的目录的权限问题,否则报错:ERROR 2002 (HY000): Can't connect to local MySQL server through soc ...

  4. Git常用命令、及常见报错处理:You have not concluded your merge (MERGE_HEAD exists)

    一.常用命令 切换到master分支:git checkout master 查看已有本地及远程分支:git branch -a(先git pull拉下全部数据) 查看远程分支:git branch ...

  5. 【模拟器】华为模拟器eNSP安装注意事项及常见报错处理

    华为eNSP模拟器:Enterprise Network Simulator Platform 简称ensp企业网络仿真平台华为公司自研的一款仿真软件,有利于大家学习华为相关网络技术. 01 安装eN ...

  6. tesseract 安装常见报错

    tesseract 安装常见报错 1 安装软件时报错 Download error Status of equ: Send Request Error. Click OK to continue!!! ...

  7. 【全网最详细yolov6】yoloV6调试记录(含训练自己的数据集及常见报错及解决方法)--持续更新ing

    本文手把手教你如何调试最新的yolov6,复现运行COCO2017及训练自己的数据集,目前该项目刚发布,BUG会比较多,调起来一般不会那么顺利,本文含windows+ubuntu,并给出了一些常见问题 ...

  8. k8s常见报错以及解决方法(一)

    k8s常见报错以及解决方法(一) 现阶段我们使用k8s集群越来越多,随之而来的是一系列的问题,接下来我向大家来介绍一下我遇到的一些问题以及解决方法 一.报错cannot allocate memory ...

  9. hexo博客本地服务器显示正常,Hexo 搭建博客 本地运行 常见报错及解决办法

    作为一名在hexo方面的新手,我在使用hexo编辑文档时遇到了很多问题,hexo generate编译的时候遇到了各种错误. 在此将这些错误及其解决方案记录下来,以便日后查证之用,同时,也可给各位在遇 ...

  10. apex常见报错,亲测1080Ti/2080Ti/3090显卡均适用

    apex常见报错,亲测可用 环境:torch1.7.1 python3.8 ,1080Ti/2080Ti/3090显卡均适用.结尾有一键解决方案. 主要针对问题: AttributeError: mo ...

最新文章

  1. java web调用c_Java调用C/C++程序
  2. mysql默认无密码的问题
  3. pageoffice网页提示未安装_Adobe Photoshop CC 2019 详细图文安装教程
  4. 关于 ES6 的 let ,var和 const
  5. Kibana可视化管理页面详细使用说明
  6. (2/2)Canvas的交互存为图片-爬坑篇
  7. python怎么命名未知数_python—命名规范
  8. 排除表_【收藏】常见电气故障及排除故障方法
  9. JavaScript函数实例(一)
  10. WebRTC源码架构浅析
  11. 集成学习(二)——Bagging
  12. android源码编译1
  13. Memcached的LRU算法
  14. 超融合和服务器关系_分析超融合与传统服务器部署的区别
  15. 东南大学研究生毕业论文LaTeX模板seuthesix的使用技巧【Mac版】
  16. 修复 rk3288 android9 的一些问题
  17. 超分辨率——综述文章
  18. 消息人士 鸿蒙系统手机今年底发布,传华为鸿蒙系统正小规模测试 新机年底前推出或备货百万台...
  19. B2B订货系统源码及框架图全输出
  20. 流放者柯南稳定的服务器,《流放者柯南》自建服务器教程

热门文章

  1. 九度oj题目1385:重建二叉树
  2. [Effective C++ --029]为“异常安全”而努力是值得的
  3. Ane技术大全 - Devil程序员
  4. windows mobile+webservice+mysql
  5. dealloc 的水,很深?
  6. Windows Mobile实现透明控件
  7. 【技术分享】CSS 实现渐变色背景
  8. 检查PHP文件头BOM
  9. Hardcoded string 下一步, should use @string resource警告 (转载)
  10. VC6里面的中文名字或者注释复制乱码解决