$ git config --global user.email "you@example.com"
$ git config --global user.name "Your Name"
$ git init #--Reinitialized existing Git repository 初始化建立分支
$ git add <file> #--add file 添加
$ git status #--no changes added to commit没有提交的修改
$ git diff <file> #--difference 差异
$ git log #--version 提交历史
$ git log --pretty=oneline #--简节
$ git log --graph --pretty=oneline --abbrev-commit #--用git log --graph命令可以看到分支合并图。
$ git reset --hard HEAD^ #--退回上一版本
$ cat file #--open file打开
$ git reflog #--history 命令历史
$ git checkout -- <file> #--back a revise 撤销修改
$ git reset HEAD <file> #--把暂存区的修改撤销掉
$ git branch #--显示所有本地分支
$ ls -a #--find folder for .git
$ rm -rf .git #--remove .git 移除
$ ssh-keygen -t rsa -C 'you@example.com' #--local user generat SSH-key
$ git remote add origin git@github.com:<name>/<file.git> #--relation git关联一个远程库,使用命令
$ git push -u origin master #--解除当前关联
$ git remote rmove origin #--首次推送加上-u将关联Github
$ git push origin master #push the latest changes to the local master branch to github
$ git clone git@github.com:<name>/gitskills.git #--从GItHub同步到本地
$ git clone -b dev git@github.com:<name>/git.git  #--下载分支dev文件到本地
$ git reset origin/46c8e12 orm.py  #--从远程恢复版本号46c中的orm文件

 
$ git checkout -b dev #--合并了--创建 git branch dev--切换分支 git checkout dev
$ git branch #--查看当前分支
$ git merge dev #--合并dev分支内容
$ git merge --no-ff -m "merge with no-ff" dev #--禁用Fast forward用--no-ff
##Fast forward模式下,删除分支后,会丢掉分支信息。
$ git branch -d dev #--删除dev分支,强行删除用-D
$ git stash #--储存当前工作
$ git stash list #--查看储存清单
恢复进展 :

1: $ git stash apply #--stash内容并不删除,你需要用git stash drop来删除

2: $ git stash pop 
$ git stash apply stash@{0} #--stash多次时可以指定
$ git branch -a #--查看所有分支(包括远程仓库的)
$ git fetch origin #--刷新远程仓库变改
$ git pull #--把最新的提交从origin/dev抓下来
查看远程库信息,使用git remote -v

rebase操作的特点:把分叉的提交历史“整理”成一条直线,看上去更直观。缺点是本地的分叉提交已经被修改过了。
$ git tag v0.9 f52c633 #--提交打标签对应的commit id是f52c633,不填id为当前事务
$ git tag -a v0.1 -m "version 0.1 released" 1094adb #--用-a指定标签名,-m指定说明文字:
$ git tag -d v0.1 #--删除
$ git push origin :refs/tags/v0.1 #--从远程删除,要先从本地删除
$ git push origin v1.0 #--推送v1.0标签到远程 v1.0==>--tags 推送全部尚未推送到远程 要忽略某些文件时,需要编写.gitignore
$ git config --global alias.st status #--以后st就表示status
$ git log -1 #--最后一次提交信息
$ git config --global alias.lg "log --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit" #--log变色

云虚拟机linux上搭建Git裸库

新建一个用户并设置密码与git邮箱名字

$ vim .ssh/authorized_keys      #--加入需要登录的用户的公钥,公钥在本地文件id_rsa.pub中
$ sudo git init --bare sample.git    #--创建一个裸库
$ sudo chown -R git:git sample.git   #--获取文件夹所有权限,git:git 是用户组与名,如果创建的用户名不是git就输入自己的

sudo 命令可能出现用户不在sudo组中:

sudo: /etc/sudoers is world writable
sudo: no valid sudoers sources found, quitting
sudo: unable to initialize policy plugin

需要切到root权限用户

# vim /ect/sudoers

在root    ALL=(ALL)  ALL下一行中加入git  ALL=(ALL)  ALL

若权限不够可以用chmod改下,建议改完恢复原权限

password是git用户的密码

资料参考来源:Git教程 - 廖雪峰的官方网站 (分享自 @廖雪峰)http://t.cn/RK0tLXB

git 常用命令及虚拟机服务器仓库搭建的更多相关文章

  1. Git 常用命令详解

    Git 是一个很强大的分布式版本管理工具,它不但适用于管理大型开源软件的源代码(如:linux kernel),管理私人的文档和源代码也有很多优势(如:wsi-lgame-pro) Git 的更多介绍 ...

  2. Git 常用命令大全

    Git常用操作命令: 1) 远程仓库相关命令 检出仓库:$ git clone git://github.com/jquery/jquery.git 查看远程仓库:$ git remote -v 添加 ...

  3. GIT常用命令备忘

    Git配置 git config --global user.name "storm" git config --global user.email "stormzhan ...

  4. Git 常用命令2

    Git 常用命令 Git 是一个很强大的分布式版本控制系统.它不但适用于管理大型开源软件的源代码,管理私人的文档和源代码也有很多优势. Git常用操作命令: 1) 远程仓库相关命令 检出仓库:$ gi ...

  5. 转收藏:Git常用命令速查表

    一. Git 常用命令速查 git branch 查看本地所有分支git status 查看当前状态 git commit 提交 git branch -a 查看所有的分支git branch -r ...

  6. Git 常用命令详解(二)

    Git 是一个很强大的分布式版本管理工具,它不但适用于管理大型开源软件的源代码(如:linux kernel),管理私人的文档和源代码也有很多优势(如:wsi-lgame-pro) Git 的更多介绍 ...

  7. 【转】Git常用命令备忘

    Git配置 git config --global user.name "robbin" git config --global user.email "fankai@g ...

  8. iOS开发——开发技巧&Git常用命令

    Git常用命令 初始化git init        加—bare实现远程仓库 配置git config user.name iCocos 配置全局git config —global user.na ...

  9. [转载]Git常用命令

    转载自: Git常用命令 Git配置 git config --global user.name "robbin" git config --global user.email & ...

随机推荐

  1. DRF教程4-视图集和路由类

    rest框架包括一个处理viewset的抽象,允许开发人员集中精力处理api交互和建模,url构造都根据常见方式自动处理. ViewSet类 几乎和VIew类一样,不过它提供read,update这样 ...

  2. Codeforces Round #533(Div. 2) A.Salem and Sticks

    链接:https://codeforces.com/contest/1105/problem/A 题意: 给n个数,找到一个数t使i(1-n)∑|ai-t| 最小. ai-t 差距1 以内都满足 思路 ...

  3. bzoj 4318 || 洛谷P1654 OSU!

    https://www.lydsy.com/JudgeOnline/problem.php?id=4318 https://www.luogu.org/problemnew/show/P1654 看来 ...

  4. Unity AssetBundle笔记

    1.入门: Resources:表示U3D自动将资源打成一个AssetBundle包,所有放在Resources下的文件夹都会打成一个AssetBundle包,资源非常大,Resources文件夹在真 ...

  5. INSERT ... ON DUPLICATE KEY UPDATE产生death lock死锁原理

    前言 编辑 我们在实际业务场景中,经常会有一个这样的需求,插入某条记录,如果已经存在了则更新它如果更新日期或者某些列上的累加操作等,我们肯定会想到使用INSERT ... ON DUPLICATE K ...

  6. puppeteer 中国区的使用

    puppeteer 中国区的使用 [issues]https://github.com/GoogleChrome/puppeteer/issues/1426 两种方案 使用 cnpm .npmrc 中 ...

  7. ASP.NET MVC 复制MVC项目代码到同一个项目的时候报错The request for ‘home’ has found the following matching controll

    ASP.NET MVC 复制MVC项目代码到同一个项目的时候报错The request for ‘home’ has found the following matching controll “/” ...

  8. ubuntu下lnmp添加虚拟目录没有权限

    lnmp.org下载的lnmp集成环境,通过lnmp vhost tsp创建了虚拟主机目录,将此目录导入到phpstorm中时提示错误,应该时权限的问题,想通过chmod -R 777 tsp来改变t ...

  9. java maven cxf笔记

    IDE: 一:新建Maven项目 1.File->New->Project.. 2. 3. 4.   二:添加cxf和jetty依赖 <dependencies> <!- ...

  10. 【NumPy学习指南】day4 多维数组的切片和索引

    ndarray支持在多维数组上的切片操作.为了方便起见,我们可以用一个省略号(...)来 表示遍历剩下的维度. (1) 举例来说,我们先用arange函数创建一个数组并改变其维度,使之变成一个三维数组 ...