git命令小汇总和github

Git 简介

  • 是什么
    • Git 也是一个版本控制管理软件
  • 有什么用,能够解决什么问题
    • 保存历史记录
    • 多人协做
  • 有了 SVN,为啥要学 Git
    • Git 火
    • Git 相对于 SVN 来讲,更强大,用户也很是多
  • 怎么用
  • Git 的诞生

git-bash 经常使用命令

  • pwd
  • ls
    • ls -a
  • cd
  • mkdir
  • clear
  • rmdir
    • 只能删除空目录
  • rm
    • rm 文件名
    • rm -rf 目录名
      • 注:很强大,能够删除非空目录,以及一些比较顽固的文件或者目录

初始化配置

# 设置用户名
git config --global user.name "你的名字"
# 配置用户邮箱
git config --global user.email "你的经常使用邮箱"
# 设置 gitk 图形查看工具中文显示默认编码(防止乱码)
git config --global gui.encoding utf-8
# 查看配置列表项
git config --list

基本使用

  • git init
    • 初始化一个 Git 仓库
  • git status
    • 查看当前工做区、暂存区、本地仓库的状态
  • git add
  • git commit
    • 示例:git commit -m "日志说明" --author="操做者姓名 <邮箱>"
    • 执行 git commit 的时候,Git 会要求具备用户名和邮箱的参数选项
    • 能够经过 git config 命令配置一下用户名和邮箱
  • git log
  • gitk

总结:操做 Git 的基本工做流程就是先修改文件,而后执行 git add 命令。
git add 命令会把文件加入到暂存区,接着就能够执行 git commit 命令,将文件存入文档库,
从而造成一次历史记录。git

工做区、暂存区、本地仓库

版本回退

# git rm --cached <file>
# 恢复暂存区的指定文件到工做区
$ git checkout [file]

# 恢复某个commit的指定文件到暂存区和工做区
$ git checkout [commit] [file]

# 恢复暂存区的全部文件到工做区
$ git checkout .

# 重置暂存区的指定文件,与上一次commit保持一致,但工做区不变
$ git reset [file]

# 重置暂存区与工做区,与上一次commit保持一致
$ git reset --hard

# 重置当前分支的指针为指定commit,同时重置暂存区,但工做区不变
$ git reset [commit]

# 重置当前分支的HEAD为指定commit,同时重置暂存区和工做区,与指定commit一致
$ git reset --hard [commit]

# 重置当前HEAD为指定commit,但保持暂存区和工做区不变
$ git reset --keep [commit]

# 新建一个commit,用来撤销指定commit
# 后者的全部变化都将被前者抵消,而且应用到当前分支
$ git revert [commit]

# 暂时将未提交的变化移除,稍后再移入
$ git stash
$ git stash pop

远程同步

  • remote
  • push
  • pull

在线仓库托管服务

一个不知道 github、stackoverflow 的程序员想一想都是可悲的程序员

  • github
  • 码云
  • coding

Github

Github 就是程序员的新浪微博
它可让你使用社交化的方式进行编程协做、
- 点赞
- 评论
- 转发
- etc.
主要做用:能够免费在线托管你的仓库
能够实现多人协做
提供了一个可视化界面(Web Page)让你能直观清晰的了解你的项目源代码github

基本使用

  • 注册
  • 登录
  • 建立远程仓库
  • 经过 git clone 命令下载远程仓库到本地
    • git clone 会自动帮你把远程仓库下载到本地,不须要再去 git init 了
    • 经过 clone 下来的仓库,git 有一个远程仓库地址列表,git 默认会把你 clone 的地址起一个别名:origin
    • 而后你执行 push 的时候实际上就是将本地的版本提交到 origin 上
  • 在本地进行操做,经过 git commit 造成历史记录
  • 经过 git push 将本地仓库中的历史记录提交到远程仓库

本地已有仓库,须要提交到线上

若是是 git init 出来的仓库,进行 push 提交的时候就不知道要往哪里 push。编程

因此,这里经过 remote 相关命令进行设置:bash

# 查看全部的远程仓库信息
git remote show
# 根据别名查看指定的远程仓库信息
git remote show 远程仓库地址别名
# 添加远程仓库信息
git remote add 别名 远程仓库地址

经过上面的 git remote add 添加完远程仓库地址信息以后,还不能直接 git push,必须在每一次
push 的时候加上 git push 仓库地址别名 master 就能够提交了。工具

若是想要省略 git push 后面须要指定的 仓库地址别名 master 能够经过下面的命令修改:ui

git push --set-upstream heima master

这样就能够直接使用 git pish 进行提交而不须要指定 heima master编码

相关文章
相关标签/搜索