Git命令学习笔记


Git命令学习笔记
 
Git 初始化
git config 命令, Git配置文件采用的是INI文件格式,git config用于读取和更改INI配置文件的内容 git config [ ] name value git config [ ] --unset name
 
初始化姓名和邮件地址
 
git config --system user.name "li song"
git config --system user.email sundayls@qq.com
别名设置
 
设置:git config --system alias.ci commit
删除:git config --unset --system alias.ci
命令输出开启颜色显示
 
git config --global color.ui true
--global 和 --system 表示配置的位置。--global代表用户主目录下配置,--system代表系统级配置文件,如果不加表示版本库级别配置文件。
 
暂存区相关操作
文件.git/index实际上就是一个包含文件索引的目录树,就是一个虚拟的工作区。这个虚拟工作区的目录树中,记录了文件名和文件的状态信息。文件的内容保存在Git对象库.git/objects目录中。
 
git add
 
表示把指定文件的内容写入到对象库中的一个新的对象中,然后更新目录树,记录到暂存区文件索引中。
 
git commit
 
表示把暂存区的目录树写到版本库中,master得到更新,让其指向新的目录树(即原来暂存区的目录树)。
 
git reset
 
git reset HEAD 表示把暂存区目录数替换成master指向的目录树,工作区不受到影响。
 
git checkout 说明:
 
git checkout [ ] [--] ...
 
表示用commit指向的目录树替换暂存区以及工作区,commit省略则相当于从暂存区检出
 
例:
 
git checkout -- <file>      用暂存区的file替换工作区的
git checkout .              用暂存区所有文件替换工作区
git checkout HEAD <file>    表示用master指向的目录树文件替换暂存区以及工作区文件
 
git checkout [<bracnch>]
例:
 
git checkout branch  更新HEAD指向到branch分支,用branch指向的目录树更新暂存区和工作区
git checkout 汇总显示工作区、暂存区与HEAD的差异.
 
git checkout -b <new_branch> <start_point>
相当于     git branch <branchname>
        git checkout <branchname>
创建和切换到新的分支,新的分支从start_point指向的提交开始创建
git diff
 
git diff - 工作区比较暂存区 git diff --cached - 暂存区比较HEAD git diff HEAD - 工作区比较HEAD
 
Git对象
git cat-file -p sha1值 查看sha1对象内容
远程版本库
git checkout -b <new_branch> <remote-branch> 从远程分支中创建本地分支,自动建立跟踪。
 
git remote add <remotename> <url> 注册远程版本库
git remote -v 查看已经注册的远程版本库
git push 命令解释:
 
1. 如果为当前分支设置了<remote>, 则等于git push <remote>
2. 没有设置<remote>,等于 git push origin
3. 如果在远程版本库中创建分支,执行 git push <remote> <new_breanch>

相关内容

    暂无相关文章