Git的简单使用
1. 本地库初始化前期
1.1. 本地库初始化
在项目文件夹中使用git init 初始化git本地仓库
会生成一个.git文件夹, 里面有一些子目录和文件
1.2. 设置签名
1. 形式:
用户名: tom
Email地址: [email protected]
作用: 区分开发人员
2. 辨析: 这里设置的签名和登陆远程中心的账号密码没有任何关系
3. 命令:
1. 项目(仓库) 级别: 仅在当前本地库使用, 即本项目使用
git config user.name tom_pro
git config user.email [email protected]
信息保存的位置是.git/config
2. 系统用户级别: 登陆当前操作系统的用户范围
git config --global user.name tom_glb
git config --global user.email [email protected]
保存位置 ~/.gitconfig
3. 遵循就近原则: 项目级别 > 系统用户级别
不允许都不存在的状态.
2. 本地库的操作
2.1. 初始化和提交
1. 查看状态
git status
2. 将工作区的"新建和修改" 添加到暂存区
git add <file> 将没有track的文件假如到我们的git管理的东西, 即添加到暂存区
git rm --cached 移除到暂存区, 进行撤销
git commit 进行提交并写上注释
git commit -m "" <file name>
2.2 更新版本(前进后退)
2.2.1 查看日志
git log 显示日志, 完整的日志
git log --pretty=oneline 在同一行显示, 有完整的hash值
git log --oneline 显示hash值的一部分
git reflog 显示移动的步数
HEAD@{移动到当前版本的步数}
2.2.1 基于索引值进行前进后退[推荐使用]
git reflog 先查看hash值
git reset --hard <hash Value>
2.2.2 使用^符号: 只能后退
git log --oneline 只显示先前的历史记录
git reset --hard HEAD^ "^" 的个数代表回退的机会
git reset --hard HEAD~3 表示回退3步
git reset --hard HEAD~n "n" 代表我们要回退的步数
2.2.3 reset的三个参数对比
1. --soft
仅在本地库移动指针
本地库向前, 相对的暂存区和工作区后移
2. --mixed
在本地库移动HEAD 指针
重置暂存区
3. --hard 使用最多OB
在本地库移动HEAD指针
重置暂存区
重置工作区
2.2.4 删除文件找回
**前提: 删除前: 文件存在时的状态提交到了本地库**
git reset --hard [指针位置]
删除操作已经提交到本地库, 指针指向历史记录位置
删除操作为提交至本地库, 指针使用HEAD
使用跳转就好了
2.2.5 进行比较, 文件差异
git diff [文件名]
将工作区的文件和暂存区比较
git diff [本地库历史版本]
将工作区的文件和本地库历史记录进行比较
2.3 分支操作
1. 创建分支
git branch [分支名]
2. 查看分支
git branch -v
3. 切换分支
git checkout [分支名]
4. 合并分支
1. 切换到接收修改的分支上(被合并的, 增加新内容);
git checkout [分支名]
2. 执行merge命令
git merge [分支名]
5. 分支冲突
1. 冲突表现: 文件中多出来一些东西, 指明是谁修改了
2. 冲突解决
2.1 编辑文件, 删除特殊符号
2.2 把文件修改到满意的程度
2.3 git add [文件名]
2.4 git commit -m "日志信息"
notice : 此时不能带任何文件名字
3. 远程库与本地库之间的操作
3.1 克隆 git clone [Address]
1. 完整的把远程库下载到本地
2. 创建origin远程地址别名
git remote add orgin [地址]
3. 初始化本地库
4. 推送到远程库
git push [地址别名] [分支名]
3.2 pull = fetch + merge
git fetch [远程库地址别名] [远程分支名]
git merge [远程库别名/远程分支名
3.3 解决冲突:
1. 要点
1. 如果不是基于Github远程库最新版做的修改, 不能推送, 必须先拉去操作.
2. 拉取下来, 进入冲突, 解决冲突就好了.
3.4 ssh登陆
1. 进入当前用户的home目录
$ cd ~
2. 删除.sh目录
$ rm -rvf .ssh
3. 运行命令生成.ssh密钥目录,
$ ssh-keygen -t rsa -C [Your email used in login Github]
notice : -C is capital format
4. 进入.ssh 目录查看文件列表
$ cd .ssh
$ ls -LF
5. 查看id_rsa.pub的文件内容
$ cat id_ras.pub
6. 复制文件内容, 登陆GitHub, 点击头像->Settings->SSH and GPG keys
7. NEW ssh key
8. 输入复制的密钥信息
9. 回到git bash 里面创建远程地址别名.
$ git remote add orgin_ssh [ssh 地址]
10. 推送文件测
4. 在eclipse中进行操作
4.1 在eclipse 中初始化本地库, 右键工程->team->share project
4.2 创建好之后, 我们可以需要写一个gitignore文件,忽略我们版本库不需要的东西.
4.3 未完待续