Git常用命令整理

git init [文件夹名] //初始化git仓库

git remote add <name> <url> //创建了一个与远端仓库的关联关系 name为这个关联的别名

git status //查看状态

git diff //显示暂存区和工作区的差异

git config --global user.name "用户名" //设置提交代码时的用户信息

git config --global user.email 邮箱 //设置提交代码时的用户信息

git log [--oneline 查看提交记录编码] //查看提交日志 

git log --decorate //可以查看标签

git add [-p 分批] [ . 所有/文件名/文件夹名] //添加变更内容到暂存区

git rm [--cached停止跟踪] [文件名] //删除文件

git commit [文件名/文件夹名] -m "提交注释" //提交变更内容到本地库

git commit -a -m "提交注释" //提交自上次commit之后的变化直接到本地仓库区

git commit -v -m "提交注释" //提交时显示所有diff信息

git commit -amend -m "提交注释" //新的commit替换上一次提交,如果代码没变化,则提交注释

git push <远程主机名> <本地分支名>:<远程分支名> //上传到远程仓库,如果本地分支和远程分支相同,则可以省略冒号。

git push -u origin 本地分支名:远程分支名 //-u 全称是upstream,上游的意思,主要用于建立本地和远程分支之间的关联,后面直接使用 git push 命令进行推送,而不需要再次指定远程仓库和分支名

git push origin master --force //如果本地与远程版本有差异,强制推送使用 --force 参数

git push origin --delete master //删除 origin 主机的 master 分支

git pull <远程主机名> <远程分支名>:<本地分支名> //从远程获取代码并合并本地的版本

git clone 远程路径 //克隆仓库

git remote //列出所有的远程主机

git remote -v //显示所有远程仓库

git tag <v1.0> //打标签

git tag -a 版本号 //打标签,并添加注释

git tag -a <tagname> -m "message" //附注标签,附注标签存储了创建者的名字、电子邮件、日期,并且可以包含标签信息

git tag -a v1.0 commit-hash //补交标签,commit-hash是提交的编号

git push origin <tagname> //推送标签到远程仓库

git push origin --tags //推送所有标签到远程仓库

git tag -d <tagname> //删除本地标签

git push origin --delete <tagname>//删除远程标签

git checkout (branchname) //切换分支

git checkout -b <branchname>//创建分支

git branch -d <branchname> //删除分支

git branch -D <branchname> //强制删除未合并的分支

git push origin --delete <branchname> //删除远程分支

git branch [-r/-a]//查看所有本地分支 -r所有远程分支 -a本地和远程所有分支

git merge <branchname>//合并branchname分支到当前分支

--合并冲突

1、按标记手动解决冲突文件 

2、git add <conflict-file> //添加合并文件到暂存区

3、git commit //提交合并结果

 

--创建远程分支

1、先拉取数据,保证本地仓库是最新

   git pull origin [master/其他分支名]

2、创建本地新的分支

   git checkout -b 新的分支名

3、推送新分支到远程仓库,-u 主要用于建立本地和远程分支之间的关联

   git push -u origin 新的分支名

--远程撤销版本上传
使用git revert或git reset
1、查询git提交的编号commit-hash
     git log --oneline
2、【方法一】重新指向版本的编号commit-hash,此种方法会重写项目历史(慎用)
     git reset <--hard/--soft/--mixed> <commit-hash> //soft,mixed,hard三种模式
     hard  直接删除指向版本之后的内容
     soft   删除的内容保存到暂存区
     mixed  删除的内容保留到工作区 
2、【方法二】 创建一个新的提交来撤销指定的改动,也是重新指向版本的编号commit-hash
     git revert <commit-hash>
3、强制推送到远程仓库
     git push origin <分支名> --force

区别:1、reset是彻底回退到指定的commit版本,该commit后的所有commit都将被清除;而revert仅是撤销指定commit的修改,并不影响后续的commit。2、reset执行后不会产生记录,revert执行后会产生记录。

  • 5
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值