Git Learning Part 1
Tips
1.配置git信息
git config --global user.name "wirelessqa"
git config --global user.email wirelessqa.me@gmail.com
修改home/username/.gitconfig 文件,提交代码的log里会显示提交者得信息。
2.工作区 暂存区
本地的git文件夹是工作区 ,在其中有一个.git隐藏目录,里边存的是git版本库。.git文件中存了很多东西,最重要的是stage(暂存区),一个默认生成的分支 master,一个指向master的指针HEAD 当我们add 时候就是把文件存到了暂存区,commit 则是把暂存区的文件提交到当前分支中
git 管理的是修改 而不是文件
当 修改 -> add —> 修改 ->commit 时候,只会把第一次的修改commit到分支中,因为只有第一次的修改添加到了暂存区,所以第二次修改不会进行commit 。可以在修改完文件后再次add 然后再commit, git 可以把 两次修改进行合并一起提交修改 -> add —> 修改 -> add —> commit
Commands
mkdir 目录名 创建一个空的目录
git init 初始化一个repo
git add -A 把文件添加到repo 暂存区
git commit -m”log” 把文件提交到repo 当前分支,log为填写的文件修改说明
git status 查看状态
git diff查看文件修改内容
git reset --hard HEAD^ 版本回到到上次提交
git reset --hard XXXX 回到到具体某次提交记录 XXXX为commit id,commit id是每次提交时候自动成成的一个很大的数值,在reset的时候不需要写入完整数值,只需要写入前几位git会自动识别出具体的id
git reflog 查看git 命令历史,方便查看commit等历史记录
git diff HEAD XXX.txt 查看具体某个文件和repo的差异
git checkout -- XXX.txt 撤销某个文件的工作区修改(其实就是用版本库中的文件替换工作区的文件) 。—- 双中划线很重要,没有的话就成了切换分支命令
git reset HEAD file 把暂存区的文件撤回到工作区 ,reset可以撤回版本也可以撤回文件 HEAD表示最新版本
git rm file 在版本库中删除文件 ,回复工作区被删除的文件可以用git checkout —- XXX.txt从版本库中恢复过来