Git基本命令

SVN(小乌龟)
集中式的版本控制系统,只有一个中央数据仓库,如果中央数据仓库挂了或者不可访问,所有的使用者无法使用SVN,无法进行提交或备份文件。

[root@git-git ~]# git config –-global user.name “lizhenya” 
# 配置git使用用户
[root@git-git ~]# git config –-global user.email “[email protected]” 
# 配置git使用邮箱
[root@git-git ~]# git config –-global color.ui true
# 语法高亮
[root@git-git ~]# git config –-list
user.name=oldboy
[email protected]
color.ui=true
[root@git ~]# cat .gitconfig 
[user]
    name = lizhenya
    email = [email protected]
[color]
    ui = true
    
 # 初始化
 git init
 # 查看工作区状态
 git status
 隐藏文件介绍:
 branches # 分支目录
 config   # 定义项目特有的配置选项
 description  # 仅供git web程序使用
 HEAD # 指示当前的分支
 hooks # 包含git钩子文件
 info # 包含一个全局排除文件(exclude文件)
 objects # 存放所有数据内容,有info和pack两个子文件夹
 refs # 存放指向数据(分支)的提交对象的指针
 index # 保存暂存区信息,在执行git init的时候,这个文件还没有
git add . 当前工作目录添加到暂存区
git rm -f b.txt 从暂存区和工作目录中删除文件
git commit -m “描述信息” 将暂存区目录上传到本地仓库
git mv a.txt a 工作区暂存区同时修改文件名称
git diff a.txt 对比当前目录和暂存区目录中的不同
git diff --cached a.txt 对比暂存区目录和本地目录的不同
git log 查看操作,相当于虚拟机的镜像、任何操作都被做了一次快照,可恢复到任意一个位置
git log --oneline 只显示提交信息
git log --oneline --decorate 显示指针指向哪里和分支指向
git log -p 显示详细信息
git log -1 显示1条内容
git checkout – a.txt 暂存区的文件覆盖工作目录文件
git reset --hard 4c57a60 指针重新指向
git reflog 查看历史总内容,回滚到以前版本后,log查询不到新版本
git branch testing 基于master创建testing分支
git branch 查看当前所在分支
git checkout testing 切换分支
git merge testing 切换到master分支后合并分支,提示输入描述信息
git branch -d testing 删除分支
git tag -a v1.0 -m “v1.0” 推送到本地目录后打标签,回滚时不需要指定唯一字符串
git tag 查看所有标签
git show v1.0 查看信息
git tag -d v2.0 删除标签
git remote add 远程仓库名称 url 添加远程仓库
git remote 查看远程仓库列表
git push -u origin master 推送到origin仓库master分支
git pull 拉取代码

Git服务程序中有一个叫做HEAD的版本指针,当用户申请还原数据时,其实就是将HEAD指针指向到某个特定的提交版本,但是因为Git是分布式 版本控制系统,为了避免历史记录冲突,故使用了SHA-1计算出十六进制的哈希字串来区分每个提交版本,另外默认的HEAD版本指针会指向到最近的一次提交版本记录

你可能感兴趣的:(Git基本命令)