从0开始配置git

第一步:安装git

  1. 官网地址:https://git-for-windows.github.io/
  2. Homebrew安装git:  https://www.cnblogs.com/ycyzharry/p/10889420.html
  3. 安装完成后,在开始菜单中找到 'Git' -> 'Git Bash',会弹出个类似cmd的命令行窗口

第二步: 设置用户名,邮箱

git config  –global user.name 'XXXX'
git config  –global user.email 'XXXX@qq.com'

在命令行中输入以上内容,Git是分布式版本控制系统,所以,每个机器都必须自报家门:你的名字和Email地址
注意git config命令的--global参数,用了这个参数,表示你这台机器上所有的Git仓库都会使用这个配置,当然也可以对某个仓库指定不同的用户名和Email地址。

第三步:创建SSH KEY

   可借鉴文档:https://blog.csdn.net/xyzchenxiaolin/article/details/51852333

ls -al ~/.ssh
ssh-keygen -t rsa –C 'XXXX@qq.com'
  1. ls -al ~/.ssh 命令检查是否本地用户主目录有名为.ssh的密钥保存文件夹和密钥文件。如果有则表示已经创建,则不需要创建SSH KEY
  2. ssh-keygen -t rsa –C 'XXXX@qq.com' 创建SSH Key,一路回车,使用默认值即可,由于这个Key也不是用于军事目的,所以也无需设置密码。
  3. (window电脑 C:UsersAdministrator) (mac电脑 输入命令open ~/.ssh)里找到.ssh目录,里面有id_rsaid_rsa.pub两个文件,这两个就是SSH Key的秘钥对,id_rsa是私钥,不能泄露出去,id_rsa.pub是公钥,可以放心地告诉任何人.
  4. 登陆GitHub或码云,打开“settings --> SSH Keys”页面:填上任意Title,在Key文本框里粘贴id_rsa.pub文件的内容

第四步 添加远程库(注意:如果已有仓库,跳过,直接到第六步)

Github

1.登陆GitHub,然后,在右上角**+**号里找到“new repository”按钮,创建一个新的仓库
2.Repository name填入git_repo,其他保持默认设置,点击“Create repository”按钮,就成功地创建了一个新的Git仓库

码云

1.登陆码云,然后,在右上角**+**号里找到“新建项目”按钮,创建一个新的仓库
2.项目名填入git_repo,ReadMe去掉勾选(注:如果勾选,新增的项目就不是空项目,推送项目时将报错)其他保持默认设置,点击“创建”按钮,就成功地创建了一个新的Git仓库

第五步:关联远程仓库(注意:如果已有仓库,跳过,直接到第六步)

1.创建本地仓库,提交第一个文件
cd e:git_repo  
git init
touch README.md  
git add README.md
git commit -m "注释:第一次提交"

1.进入e盘的git_repo目录下
2.通过 git init 将 git_repo 变成git仓库,创建完成后该目录下会多个.git的隐藏文件,如果你没有看到.git目录,那是因为这个目录默认是隐藏的,用ls -ah命令就可以看见。
3.touch README.md创建README.md文件,该文件用于描述项目,使用语法markdown
4.git add README.md 将README.md从工作区添加到暂存区
5.git commit -m '' 提交README.md文件

2.关联远程仓库
git remote add origin https://git.oschina.net/XXXX/git_repo.git  

origin是远程库的名称,这是git默认的叫法,改名称可自定义
远程url 在GitHub或码云中对应项目下寻找,Git支持多种协议,默认的git://使用ssh,但也可以使用https等其他协议。

第六步:克隆

远程仓库文件克隆到本地仓库
 git clone  https://github.com/XXXX/repository.git  

git clone 从远程仓库中克隆到本地仓库,至此项目已从远程仓库下载到了本地仓库,可将本地仓库的项目导入到自己的开发工具中进行操作了。

 

注:常用git命令

git init              初始化版本库
git add .        将文件添加到仓库中
git commit -m "描述"    将文件提交到仓库中
git checkout dev       切换分支

git checkout -b dev 创建一个分支,并切换到该分支

git checkout -d dev 删除一个分支

git branch   查看分支
git push origin 子分支       上传到子分支

注:git合并

1.git pull:获取最新代码到本地,并自动合并到当前分支

命令展示

//查询当前远程的版本
$ git remote -v
//直接拉取并合并最新代码
$ git pull origin master [示例1:拉取远端origin/master分支并合并到当前分支]
$ git pull origin dev [示例2:拉取远端origin/dev分支并合并到当前分支]

分析:直接合并,无法提前处理冲突。

2.git fetch + merge: 获取最新代码到本地,然后手动合并分支

额外建立本地分支

代码展示

//查看当前远程的版本
$ git remote -v 
//获取最新代码到本地临时分支(本地当前分支为[branch],获取的远端的分支为[origin/branch])
$ git fetch origin master:master1  [示例1:在本地建立master1分支,并下载远端的origin/master分支到master1分支中]
$ git fetch origin dev:dev1[示例1:在本地建立dev1分支,并下载远端的origin/dev分支到dev1分支中]
//查看版本差异
$ git diff master1 [示例1:查看本地master1分支与当前分支的版本差异]
$ git diff dev1    [示例2:查看本地dev1分支与当前分支的版本差异]
//合并最新分支到本地分支
$ git merge master1    [示例1:合并本地分支master1到当前分支]
$ git merge dev1   [示例2:合并本地分支dev1到当前分支]
//删除本地临时分支
$ git branch -D master1    [示例1:删除本地分支master1]
$ git branch -D dev1 [示例1:删除本地分支dev1]

分析:可以提前处理冲突,额外对临时分支进行处理。

3.git fetch + merge: 获取最新代码到本地,然后手动合并分支

不额外建立本地分支

命令展示

//查询当前远程的版本
$ git remote -v
//获取最新代码到本地(本地当前分支为[branch],获取的远端的分支为[origin/branch])
$ git fetch origin master  [示例1:获取远端的origin/master分支]
$ git fetch origin dev [示例2:获取远端的origin/dev分支]
//查看版本差异
$ git log -p master..origin/master [示例1:查看本地master与远端origin/master的版本差异]
$ git log -p dev..origin/dev   [示例2:查看本地dev与远端origin/dev的版本差异]
//合并最新代码到本地分支
$ git merge origin/master  [示例1:合并远端分支origin/master到当前分支]
$ git merge origin/dev [示例2:合并远端分支origin/dev到当前分支]

分析:可以提前处理冲突,不需要对临时分支进行处理。

 

原文地址:https://www.cnblogs.com/fanqiuzhuji/p/13953488.html