Git常用命令总结

一、本地git操作

1. 初始化
$ git  init  # 在需要git的目录中 

 

2. 添加add和提交commit
$ git add <filename>  # 提交stage 
$ git commit -m '注释'  # 提交commit

 

3. 查看状态
$ git status  # 查看工作区状态
$ git diff HEAD -- <filename> #查看工作区中文件与最新的commmit之间的不同

 

4.版本回退
$ git log  #显示从最近到最远的提交日志
$ git git log --pretty=oneline #简略版提交日志

$ git reset --hard HEAD^  #回退到上个版本
$ git reset --hard HEAD^^ #回退到上上个版本
$ git reset --hard HEAD~100  #回退到上100个版本
$ git  reset  --hard <commit_id >  #转到该commit  

$ git reflog   # 查看历史命令,可以知道未来的版本号

 

5.撤销修改
$ git checkout -- readme.txt  #让文件回到最近一次git commit或git add时的状态。
$ git reset HEAD <filename>  # 把暂存区的修改撤销掉(unstage)

 

6.分支管理
$ git  branch  #查看现有的branch  
$ git  branch  <branchname>  #创建branch  
$ git  checkout  <branchname>  #切换到该branch 
$ git checkout -b dev  # 创建并切换到该branch
$ git merge <branchname>  # 合并branch
$ git  branch  -d <branchname> #删除该branch –d改成-D为强行删除
$ git log --graph --pretty=oneline --abbrev-commit #查看分布合并图

 

7.保存工作区
$ git  stash  #保存当前工作区状态  
$ git  stash  list  #查看已保存的工作区状态  
$ git  stash  apply  stash@{0}  #恢复到该工作区状态 
$ git stash pop   # 恢复的同时把stash的内容也删了

 

8.修复bug
$ git checkout master
$ git checkout -b issue-101
$ git add readme.txt 
$ git commit -m "fix bug 101"
$ git checkout master
$ git merge --no-ff -m "merged bug fix 101" issue-101
$ git branch -d issue-101

 

二、远程仓库操作

1. 准备
2. 创建ssh
  • 显示隐藏文件

    $ defaults write com.apple.finder AppleShowAllFiles -bool true
  • 点击桌面顶部菜单 前往>个人 看看自己电脑上有没有个 .ssh 的隐藏文件,有的话个人建议删除,重新建一个

    • 新建个 .ssh文件(记住当前目录)
    $ mkdir .ssh
    • 进入到刚才新建的.ssh文件目录下
    cd .ssh
  • 创建ssh

    $ ssh-Keygen -t rsa -C "your_email@example.com"  #后面提示输入密码可以忽视
  • 查看是否存在 id_rsa(私钥) id_rsa.pub(公钥) 这两个东西

    $ ls -la  
    • 打开 id_rsa.pub,复制其中的ssh, 登陆github,选择Account Settings–>SSH Keys 添加ssh
    $vim id_rsa.pub

    如下图所示
     

3.上传项目
touch README.md //新建一个记录提交操作的文档
git init //初始化本地仓库
git add README.md //添加
git add *  //加入所有项目
git status //检查状态 如果都是绿的 证明成功
git commit -m "first commit"//提交到要地仓库,并写一些注释
git remote add origin git@github.com:youname/Test.git //连接远程仓库并建了一个名叫:origin的别名
git push -u origin master //将本地仓库的东西提交到地址是origin的地址,master分支下

 

4.将远程库clone到本地
$ git  clone  <address of remote lib> 
$ git  branch  --set-upstream dev  origin/dev #在本地创建dev分支,关联到远程库的dev,并抓取该内容

 

5.多人协作
  • 首先,可以试图用git push origin branch-name推送自己的修改;

  • 如果推送失败,则因为远程分支比你的本地更新,需要先用git pull试图合并;

  • 如果合并有冲突,则解决冲突,并在本地提交;

  • 没有冲突或者解决掉冲突后,再用git push origin branch-name推送就能成功!

  • 如果git pull提示“no tracking information”,则说明本地分支和远程分支的链接关系没有创建,用命令git branch --set-upstream branch-name origin/branch-name

  • 在本地创建和远程分支对应的分支,使用git checkout -b branch-name origin/branch-name,本地和远程分支的名称最好一致;。
     
6. 其他命令
$ git remote -v; #查看远程库信息
$ git push -u origin :branch_name #删除远程分支branch_name,注意origin前有空格  
git push -f origin #强制上传到远程
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值