zoukankan      html  css  js  c++  java
  • git常用命令

    初始化Git仓库: git init;

    添加文件到暂存区:git add 文件;

    提交缓存到仓库:git commit -m "提交";

    仓库当前的状态:git status;

    查看区别:git diff 文件;

    查看提交历史:git log;

    查看命令历史:git reflog

    版本回退到最新:git reset --hard HEAD; (上一个版本就是HEAD^,上上一个版本就是HEAD^^,往上100个版本写成HEAD~100

    版本回退到指定commit id:git reset --hard 2342437

    删除文件:git rm 文件

    撤销修改(还没有被放到暂存区):git checkout -- 文件   其实是用版本库里的版本替换工作区的版本,无论工作区是修改还是删除

    撤销修改(已经添加到暂存区):git reset HEAD file  把暂存区的修改撤销掉(unstage)

    创建SSH Key:ssh-keygen -t rsa -C "注释"

    本地库与远程库关联:git remote add origin git@server-name:path/repo-name.git 远程库的名字默认叫origin

    推送master分支到远程库:git push [-u] origin master   -u指定origin为默认主机,后面就可以不加任何参数使用git push推送当前分支了

    检出仓库:git clone git://github.com/jquery/jquery.git

    查看远程仓库:git remote -v

    添加远程仓库:git remote add [name] [url]

    删除远程仓库:git remote rm [name]

    修改远程仓库:git remote set-url --push[name][newUrl]

    拉取远程仓库:git pull [remoteName] [localBranchName]

    查看本地分支:git branch

    查看远程分支:git branch -r

    创建本地分支:git branch [name]  注意新分支创建后不会自动切换为当前分支

    切换分支:git checkout [name]

    创建新分支并立即切换到新分支:git checkout -b [name]

    删除分支:git branch -d [name]  -d选项只能删除已经参与了合并的分支,对于未有合并的分支是无法删除的。如果想强制删除一个分支,可以使用-D选项

    创建远程分支(本地分支push到远程):git push origin [name]

    删除远程分支:git push origin :refs/tags/[name]

    合并分支:git merge [--no-ff -m "注释"][name]  将名称为[name]的分支与当前分支合并。--no-ff表示禁用Fast forward,会创建一个新的commit,能看出曾经合并过

    分支合并图:git log --graph

    多人协作:

    1. 首先,可以试图用git push origin branch-name推送自己的修改;

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

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

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

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

    保存当前工作现场:git stash

    查看stash列表:git stash list

    恢复工作现场:git stash apply [stash@{0}] 恢复后,stash内容并不删除,你需要用git stash drop来删除

    恢复工作现场:git stash pop 恢复的同时把stash内容也删了

    当手头工作没有完成但又要紧急修复某个bug时,先把工作现场git stash一下,然后去修复bug,修复后,再git stash pop,回到工作现场。

    查看标签:git tag

    创建标签:git tag <tagname>[commit id]

    指定标签信息:git tag -a <tagname> -m "注释" 

    用PGP签名标签:git tag -s <tagname> -m "注释"  

    查看标签信息:git show <tagname>

    推送某个标签到远程git push origin <tagname> 

    推送全部标签到远程:git push origion --tags

    删除标签:git tag -d <tagname>

    删除远程标签:git push origion:refs/tags/<tagname>

    查看远程标签:git tag -r

    Git显示颜色:git config --global color.ui true

    要忽略的文件:.gitignore

    配置别名:git config --global alias.st status 加上--global是针对当前用户起作用的,如果不加,那只针对当前的仓库起作用。

    每个仓库的Git配置文件都放在.git/config文件中,当前用户的Git配置文件放在用户主目录下的一个隐藏文件.gitconfig

     
     
     
     
     
  • 相关阅读:
    CSS Grid 布局
    sublime text 3配置c/c++编译环境
    [工具/PC]计算机中丢失libiconv-2.dll,丢失libintl-8.dll,无法定位程序输入点libiconv于动态链接库libiconv-2.dll上问题解决方法
    操作系统Unix、Windows、Mac OS、Linux的故事
    编译型语言与解释型语言的区别及各自的优缺点
    node版本控制之nvm
    Webpack devServer中的 proxy 实现跨域
    webpack-dev-server配置指南(使用webpack3.0)
    [bzoj3295][Cqoi2011]动态逆序对_主席树
    [bzoj2989]数列_KD-Tree_旋转坐标系
  • 原文地址:https://www.cnblogs.com/erbing/p/6648974.html
Copyright © 2011-2022 走看看