初次学习Git——简单的命令

一、安装

指定用户名

git config --global user.name "yourusername"
git config --global user.email "xxxxxxx@xxx.com"

二、初始化仓库

git init <文件夹路径>

三、添加文件到仓库

git add <文件名>  //添加文件
git commit -m "备注"  //提交文件

四、时光穿梭

版本回退

git log --pretty=online   //查看提交日志
git reset --hard HEAD^   //回退到上一个版本
git reset --hard HEAD^^  //回退到前两个版本
git reset --hard <commit id> //回退到commit id 那个版本
git reflog  //查看每次命令(找commit id号)
git status  //查看提交状态
git diff <文件名>  //比较文件
git diff HEAD -- <文件名> //比较git工作区的文件

###撤销修改

git checkout -- <文件名> //丢弃工作区的修改(未add)
git reset HEAD <文件名> //丢弃暂存区的修改(已经add过的)

###删除文件

rm <filename>  //先手动删除本地文件
git rm <filename>  //未推送至版本库,在删除工作区文件
git checkout -- <filename> //已推送至版本库,恢复文件

五、远程仓库

添加远程仓库

ssh-keygen -t rsa -C "youremail@example.com" //创建SSH key
//将本地用户目录下的id_rsa.pub里的公钥复制粘贴到Github里的setting里

git remote add origin git@github.com:<github用户名>/learngit.git
//关联远程仓库
git push -u origin master  //将本地仓库推送至远程仓库

git push origin master  //修改完本地,使用此命令将本地提交到仓库

克隆

git clone <项目地址>  //项目地址有https,和git等协议,git更快

六、分支管理

创建与合并

git branch  //查看分支
git branch <name>  //创建分支
git switch <name>  //切换分支
git switch -c <name> //创建并切换分支
git merge <name>  //合并某分支到当前分支
git branch -d <name>   //删除分支

解决冲突

1.手动解决
2.查看分支合并图

git log --graph

使用普通合并

git merge --no-ff -m "merge with no-ff" <分支名>  
//不使用Fast-Forward模式合并

Bug分支

1.修复bug,创建bug分支,修复后合并,然后删除bug分支
2.手里有工作没完成(假设处于dev分支)

git stash //保存现场
//切换mastet分支创建bug分支修复合并
//切换回dev分支
git stash list  //查看现场
git stash pop  //恢复并删除当前stash


//master上修改的东西想要合并到dev上,防止重复劳动
git cherry-pick <commit id>  
//此处commit id 是bug分支提交时的commit id

Feature分支

添加功能,新建一个feature分支

git branch -D <name>   //删除一个没有合并过的分支

多人合作

git remote -v  //查看远程库信息
git push origin <branch-name> //推送本地分支
git pull  //从远程库获取最新提交,若有冲突先解决冲突

git switch -c <branch-name> origin/<branch-name>  
//在本地创建和远程分支对应的分支,本地分支和远程分支最好名字一样

git branch --set-upstream branch-name origin/branch-name
//建立本地分支和远程分支的关联

Rebase

rebase操作可以把本地未push的分叉提交历史整理成直线;

rebase的目的是使得我们在查看历史提交的变化时更容易,因为分叉的提交需要三方对比

七、标签管理

创建标签

git tag <tagname> 
//创建一个标签,默认在HEAD位置,也可指定一个commit id

git tag -a <tagname> -m "说明"  //指定标签信息
git tag  //查看所有标签

操作标签

git push origin <tagname> //向远程推送一个标签
git push origin --tags  //推送所有本地标签
git tag -d <tagname>  //删除一个标签
git push origin :refs/tags/<tagname>  //将远端的标签删除

八、提交PR

  1. fork一个项目
  2. git clone 自己账号下的项目
  3. 在本地修改工作完毕后,add,commit之后,push到自己的仓库
  4. 向原来的项目提交一个PR,并留言等待通过。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值