一、Git简介
git官网下载
什么是Git?
代码版本控制工具
一款版本控制工具
Git是一个免费的开源分布式版本控制系统,旨在快速高效地处理从小到大的项目。
Git易于学习,占用空间小,性能快如闪电。
它超越了像Subversion、CVS、Perforce和ClearCase这样的配置管理工具,具有廉价的本地分支、方便的staging区域和多个工作流等特性。
一款版本控制工具
发展历史
1.U盘
2.svn 集中式 多个svn客户端上传到一个svn服务器
优点:1自带代码对比工具2每一次提交记录缺点 公司内网,回家不能离线使用 svn服务器一旦挂掉,无人可救
3.git 分布式 (分布到每个人的仓库)linux开发者
优点:1自带代码对比工具2每一次提交记录A 本地仓库 有记录 脱机使用B push到远程仓库 服务器挂掉,每个人都有记录,影响比较小 pull拉取 push推送
流程图


Git使用流程
git init初始化本地仓库git add .添加所有到暂存区git status查看状态git commit -m '第一次提交'提交到本地仓库git log查看提交记录git reset --hard HEAD^回退一个版本git reset --hard HEAD~3回退三个版本git reflog查看操作记录 用于回退后再恢复git reset --hard 6位版本号码git remote add origin 仓库地址源地址git push -u origin master- git remote -v 查看别名 url太长了记不住,就创建一个别名
- git remote add 别名 url
二、git操作
首次安装需要做的 确定是哪个人的代码,和将来degithub账号没有关系1.设置名字和邮箱
git config --global user.name "name"git config --global user.email "123@qq.com"

可以在文件中查看
2.初始化
git init
3.配置git 忽略文件
不让一些文件上传
# Compiled class file*.class# Log file*.log# BlueJ files*.ctxt# Mobile Tools for Java (J2ME).mtj.tmp/# Package Files #*.jar*.war*.nar*.ear*.zip*.tar.gz*.rar# virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xmlhs_err_pid*.classpath.project.settingstarget.idea*.iml
4.生成公钥
ssh-keygen -t rsa



5.常见命令
touch <file> 创建文件git add <file> 提交到暂存区 git add. . 表示通配符git rm --cashed hello.txt 从暂存区删除--》未被追踪git commit -m "日志" <file> 提交本地仓库 m:message的意思git push 远程仓库git status 查看状态git reset --hard <ip> 版本穿梭(回退)git reflog 查看提交日志git log 查看详细提交日志git branch -d <分支文件> 从其他分支删除git branch -D <分支文件> 在master分支上强制删除
6.分支
1.创建分支
git branch hot-fix

2.查看分支
git branch -v

3.切换分支
git checkout hot-fix

4.合并到master
git checkout master
5.合并分支
git merge hot-fix

有冲突需要手动合并分支
2.2、gitee仓库
1、生成ssh公钥
ssh-key -t rsa
一直回车
2、查看秘钥
cat ~/.ssh/id_rsa.pub
复制到gitee公钥,ok
3、验证是否成功
ssh -T git@gitee.com
4、本地添加仓库
git remote add origin git@gitee.com:cx0413/git-test1.git
5、验证
git remote
6、上传代码
git push [-f] [--set-upstream]origin master[-f] 表示强制提交[--set-upstream] 第一次提交git branch -vv查看与远端关联关系
7、拉取代码
git pull https://gitee.com/cx0413/git-demo.git master拉取=fetch+merge抓取git fetch 获得提交git merge origin/master
8、克隆代码
git clone https://gitee.com/cx0413/git-demo.git
三、IDEA集成git
1.配置忽略文件
两者在同一目录下

1)git.ignore 文件模版内容如下:
# Compiled class file *.class# Log file*.log# BlueJ files*.ctxt# Mobile Tools for Java (J2ME).mtj.tmp/# Package Files #*.jar*.war*.nar*.ear*.zip*.tar.gz*.rar# virtual machine crash logs, seehttp://www.java.com/en/download/help/error_hotspot.xmlhs_err_pid*.classpath.project.settingstarget.idea*.iml
2)在.gitconfig 文件中引用忽略配置文件(此文件在 Windows 的家目录中)
[user]name = cxemail = 1437950849@qq.com[core]autocrlf = true[core]excludesfile = C:/Users/酷酷的鑫/git.ignore注意:这里要使用“ 正斜线(/)”,不要使用“ 反斜线(\)”
2.定位 Git 程序

3、创建项目仓库

