常用git命令

一. git初始化和相关操作:

  • git初始化:git init
  • 设置用户名:git config --global user.name '用户名'
  • 设置用户名邮箱:git config --global user.email '邮箱'
    (不加 --global为仓库级别,否是为系统级别,仓库级别>系统级别)
  • 查看初始化配置:git config --list

二. 提交命令:

  1. 工作区=>暂存区(可以把 . 替换成指定文件,. 表示全部文件)

     git add .
    
  2. 暂存区=>git仓库(不指定文件名默认暂存区全部提交)

    git commit -m "日志信息" [文件名]
    
  3. 查看提交状态

    git status
    
  4. 查看没有暂存的文件

    git diff
    
  5. 查看暂存但没有提交的文件

    git diff --staged
    
  6. 查看暂存区的文件

    git ls-files -s
    
  7. 撤销没有添加暂存区的工作区修改

    git checkout [文件名]
    

三.控制版本

查看提交版本(head为指针,指向当前版本 )

git log	//详细查看
git log --pretty=oneline	//简洁查看,每条日志显示一行
git log --oneline		//简洁显示前部分hash值(只显示当前可后退的版本日志)
git log --oneline --decorate --graph --all		//查看整个项目的分支图 
git reflog	//显示每一次head变化记录

控制版本的前进后退

1: --soft移动本地仓库head指针,
2: --mixed移动本地仓库指针和重置暂存区,
3: --hard移动本地仓库指针、重置暂存区和工作区

git reset --hard 【索引值】	//根据索引值返回指定版本
git reset --hard HEAD^^^	//(^表示退一个版本,可以写多个)
git reset --hard HEAD~1		//(~后面的数字表示退后几个版本)
git reset --hard HEAD 		//(当前指针同步刷新)

四.分支操作

  1. 创建分支
    git branch [分支名]
    
  2. 创建一个指定版本的分支
     git branch [分支名] [指定版本的索引值]
    
  3. 创建一个分支并切换到创建的分支上
    git checkout -b [分支名]
    
  4. 查看分支
     git branch -v
    
  5. 切换分支
     git checkout [分支名]
    
  6. 合并分支
    //切换到被合并的分支上:
    git checkout [要合并的分支]
    
    //执行merge命令:
    git merge [有新内容要合并的分支]
    
  7. 强制删除分支
    git branch -D [分支名]
    
  8. 删除分支,如果这个分支未被合并则删除失败
     git branch -d [分支名]
    
  9. 不提交的状态下储存工作状态
    git stash		//储存工作状态
    git stash list	//查看存储
    git stash apply [指定储存]	//取出储存(如果不指定,git默认指定最近的储存)
    git stash pop 	//取出最近的存储后立即从栈删除
    

五.标签操作

  1. 查看标签列表
     git tag
    
  2. 为当前版本创建标签
    git tag [标签名]
    
  3. 指定版本创建标签
    git tag [标签名] [哈希值]
    
  4. 删除标签
    git tag -d [标签名]
    
  5. 回到指定标签查看
    git checkout [标签名]
    
  6. 创建指定标签分支
    git checkout -b [标签名]
    

六.远程github仓库操作

  1. 给远程项目地址取别名

    git remote add [别名] [远程项目地址]
    
  2. 远程仓库复制到本地

    git clone [远程地址]
    
  3. 发送到远程仓库

    //如果远程仓库没有这个分支则会新建这个分支
    git push [远程地址] [本地分支]	
    
    //将指定本地分支提交到指定远程分支上
    git push [远程地址] [本地分支]:[远程分支] 	
    
  4. 拉取远程库内容

    (方法1)抓取远程库:git fetch [远程地址] [远程分支]
            切换到到远程库分支查看内容:git checkout  [远程地址/远程分支]
            确认内容后切换回原来的分支:git checkout [分支名]
            合并远程内容:git merge [远程地址/远程分支]
    (方法2)直接拉取远程内容合并当前本地分支:git pull  [远程地址] [远程分支]	//pull=fetch+merge
    	     或:git pull [远程地址] [远程分支]:[本地分支] (将指定远程分支合并到指定本地分支上)
    

    解决协同开发冲突:先拉取修改后在提交push

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值