菜鸟一枚,之前一直用版本控制工具是SVN,对Git了解不多,最近简单了解了一下git的使用,因为Git是一个使用工具,原理只是了解了一大概,今天整理了一下,分享出来希望能帮到有需要的人,有错误也希望能够帮我指出来,感谢!
一:Git工作流程
本地工作目录→→→暂存区→→→本地版本库(本地分支)→→→远程仓库(远程分支)
常用命令:
本地工作目录→→→暂存区:git add
暂存区→→→本地版本库:git commit
本地版本库→→→远程仓库:git push
远程仓库→→→本地版本库:git pull
二:安装
1:git安装
Git的安装很简单,在官网下载安装包直接安装即可,基本都是默认下一步。
可以参考:https://jingyan.baidu.com/article/9f7e7ec0b17cac6f2815548d.html
2:Git配置
安装好Git之后,需要设置用户名和邮箱地址,
Git的配置信息分为全局和项目两种,命令中带了“--global"参数,这就意味是在进行全局配置,它会影响本机上的每个一个Git项目,根据需要自行设置即可
1: 右键→→→Git Bash here:
设置全局用户名和邮箱:
git config --global user.name "xxx"
git config --global user.email "xxx"
设置项目用户名和邮箱:在命令行环境,进入Git项目所在目录,执行下面的命令:
git config user.name "xxx"
git config user.email "xxx"
查看自己的用户名和邮箱地址:
git config user.name
git config user.email
设置好之后,用户名以及邮箱会保存在本地文件夹中:C:\Users\彬\.gitconfig
2:配置ssh
SSH方式,本地产生密钥对,然后把公钥加入到代码托管网站的秘钥允许列表里面,用这个密钥对访问,等同于提供了密码。密钥对保存在某台机器上,这样从这台机器上访问网站就不需要密码了,因为这台机器上能找到秘钥来替代口令进行认证
a:生成ssh秘钥
ssh-keygen -t -c xxxx
注释:xxxx是之前配置的邮箱,输入命令一直回车,执行完毕之后,会生成ssh文件
b:将ssh秘钥导入托管网站(例如:GitHub)
具体操作:进入托管网站github→setting→SSH and GPD keys→new SSH key
title:随便起
key:复制本地生成的公钥(id_rsa.pub)
测试连通性:
ssh -T git@github.com
执行之后输入:yes
成功后:新增C:\Users\彬\.ssh\known_hosts文件
三:Git的使用
1:Git新建项目:
a:本地新建项目:
创建Git工作区(文件夹)→→→右键→→→打开Git命令窗口Git Bash here (执行以下命令,成功:生成.git文件)
git init
b:远程新建项目:
进入GitHub:new→→建立项目→→生成连接 git@github.com:xxxxxxxxxxxx.git
c:本地新建项目关联远程新建项目
git remote add origin xxxxxxxxxxxx
注释:xxxxxxxxxxxx:创建项目生成的远程连接
2:Git使用流程
a:发布项目 (本地→→→远程)
本地 →→→暂存区 (.表示所有文件)
git add .
暂存区→→→本地分支(默认master)
git commit -m "注释"
本地分支→→→远程仓库
git push -u origin master
注意:执行git add . 时有时回提示警告消息:warning: LF will be replaced by CRLF in XXXXXXXXXXXXXX.
执行以下命令即可:不影响使用,以下命令不执行也可以
git config core.autocrlf false
b:下载项目(远程→→→本地)
git clone xxxxxxxxxxx
注释:xxxxxxxxxxxx:创建项目生成的远程连接
c:提交(本地→→→远程)
本地 →→→暂存区 (.表示所有文件)
git add .
暂存区→→→本地分支(默认master)
git commit -m "注释"
本地分支→→→远程仓库
git push origin master
注意:与发布项目相比:命令没有 -u
d:更新(远程→→→本地)
git pull
四:Egit的使用(eclipse中使用git)
目前eclipse中都原生支持git,如果不支持,在Help→→→ eclipse marktplace中安装即可。
1:eclipse配置git:
a:Windows→perferences→team→Git→configuration→添加邮箱 和用户名
b:Windows→perferences→General→network connections→ssh2→选择生成的ssh目录
2:使用流程:
a: 发布项目 (本地→→→远程)
右键项目→Team→share project
右键项目→Team→Add to index 本地 →→→暂存区
右键项目→Team→commit 暂存区→→→本地分支
右键项目→Team→remote→push 本地分支→→→远程仓库
注意:其他步骤一步步填写即可
b:下载项目(远程→→→本地)
git clone xxxxxxx
注释:xxxxxxxxxxxx:创建项目生成的远程连接
c:提交(本地→→→远程)
本地→暂存区
右键项目(或文件)→Team→Add to index
暂存区→本地分支(2种选择)
右键项目(或文件)→Team→commit
右键项目(或文件)→Team→commit and push(执行此命令下一步可省略)
本地分支→远程仓库(xxx为分支名字,默认master)
右键项目(或文件)→Team→repository→push Branch "xxx"
注意:comment时:comment and push和comment两个按钮的区别:
comment and push:可以单独的push某一个文件
comment:不能单独的push某一个文件,只能push整个项目
d:更新(远程→→→本地)
右键项目(或文件)→Team→remote→pull
e:解决冲突:
进入同步视图:
右键→→team→→synchronized workspace
添加到本地暂存区:
右键→→add to index
提交到本地分支 :
右键→→commit
更新服务端的分支内容到本地分支:
本地文件右键→→team→→repository→→pull
修改冲突:
直接修改或者右键→→merge tool
注意:
提交:
此时文件变成普通的本地文件,需要重add to index和commit才能push到远程仓库,操作与上面的提交一样