常用的git命令

GIT BASICS

git init在指定的⽬录下创建⼀个空的git repo。不 带参数将在当前⽬录下创建⼀个git repo。
git clone克隆⼀个指定repo到本地。指定的repo可 以是本地⽂件系统或者由HTTP或SSH指 定的远程路径。
git config user.name针对当前repo配置⽤户名。使⽤--global 参数将配置全局⽤户名。
git add将指定⽬录的所有修改加⼊到下⼀次 commit中。把替换成将 添加指定⽂件的修改。
git commit -m "<message>"提交暂存区的修改,使⽤指定的 作为提交信息,⽽不是打开⽂ 本编辑器输⼊提交信息。
git status显示哪些⽂件已被staged、未被staged以 及未跟踪(untracked)。
git log以缺省格式显示全部commit历史。更多⾃ 定义参数请参考后续部分。

GIT DIFF

git diff⽐较⼯作区和暂存区的修改。
git diff HEAD⽐较⼯作区和上⼀次commit后的修改。
git diff --cached⽐较暂存区和上⼀次commit后的修改。

UNDOING CHANGES

git revert<commite>对指定创建⼀个undo的 commit,并应⽤到当前分⽀。
git reset<file>将<file>从暂存区移除,但保持⼯作区不 变。此操作不会修改⼯作区的任何⽂件。

REWRITING GIT HISTORY

git commit -m <message>--amend将当前staged修改合并到最近⼀次的 commit中。
git rebase<base>基于对当前分⽀进⾏rebase。可以是commit、分⽀名称、tag或 相对于HEAD的commit。
git reflog显示本地repo的所有commit⽇志。

GIT BRANCHES

git branch显示本地repo的所有分⽀。
git switch -c<branch>创建并切换到⼀个新的名为的分 ⽀。去掉-c参数将切换到⼀个已有分⽀。
git merge<branch>将指定<branch>分⽀合并到当前分⽀。

REMOTE REPOSITORIES

git remote add<name><url>添加⼀个新的远程连接。添加后可使⽤<name>作为指定远程连接的名称。
git fetch<remote><branch>从指定抓取指定的所 有commit到本地repo。去掉将 抓取远程所有分⽀的修改。
git pull<remote>从指定抓取所有分⽀的commit 并⽴刻合并到本地repo。
git push<remote><branchj>将本地指定推送到指定远程 。如果远程没有对应的分⽀,将 ⾃动在远程创建此分⽀。

GIT CONFIG

git config --global user .name<name>

配置当前⽤户名,使⽤ --global参数将针 系统登录⽤户⽣效。

git config --

global user .email

<email>

置当前⽤户Email

git config --

global alias .

<alias-name>

<git-command>

⼀个git命令的快捷⽅式。例如:配    alias.glog log --graph --oneline使git glog相当于git log --graph --oneline” .

git config --

system

core .editor

<editor>

置⽂本编辑器,例如vi,在必要时⾃动 打开此⽂本编辑器。

git config --

global --edit

开当前⽤户的git全局配置并编辑。

GIT LOG

git log -<limit>

log的显示数量。例如:  git log -5” 示最新5commit

git log --oneline

⾏显示⼀条commit

git log --author=

"<pattern>"

按提交者名字搜索并显示commit

git log --grep=

"<pattern>"

按指定内容搜索并显示commit

git log

<since> . .<until>

显示指定范围的commit。范围参数可以 commit ID 、分⽀名称、  HEAD或任意相对 位置

git log -- <file>

显示包含指定⽂件修改的commit

git log --graph

使 --graph参数显示图形化的branch 息。

GIT RESET

git reset

移除所有暂存区的修改,但不会修改⼯ 

git reset --hard

移除所有暂存区的修改,并强制删除所 ⼯作的修改。

git reset

<commit>

当前分⽀回滚到指定<commit>,清除 区的修改,但保持⼯作区状态不变。

git reset --hard

<commit>

当前分⽀回滚到指定<commit>,清除  暂存区的修改,并强制删除所有⼯作区 修改

GIT REBASE

git rebase -i

<base>

交互模式对当前分⽀做rebase

GIT PULL

git pull --rebase

<remote>

取所有远程分⽀,并以rebase模式并⼊ repo⽽不是merge

GIT PUSH

git push <remote>

--force

将本分⽀推送到远程。不要使⽤ --force ,除⾮你完全明⽩此操作的后果。

git push <remote>

--tags

使push命令并不会⾃动将本地tag推送  远程。加上--tags参数会将所有本地tag 送到远程。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值