Git 命令简单罗列
源教程出自 廖雪峰的官方网站 https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000
整理出运行命令,不做过多解释!
git 简单整理:
1.down
https://git-scm.com/download/win
mirror https://pan.baidu.com/s/1kU5OCOB#list/path=%2Fpub%2Fgit
2.install
install
$ git config --global user.name "Your Name"
$ git config --global user.email "email@example.com"
3.create version
$ mkdir learngit
$ cd learngit
$ pwd
out:/Users/michael/learngit ####window下不要中文与空格
$ git init
out:Initialized empty Git repository in /Users/michael/learngit/.git/
4.commit
$ git add readme.txt
$ git commit -m "wrote a readme file"
out:[master (root-commit) eaadf4e] wrote a readme file
1 file changed, 2 insertions(+)
create mode 100644 readme.txt
5.status look
$ git status
$ git diff readme.txt
6.back version
$ git log
$ git log --pretty=oneline
$ git reset --hard HEAD^ ####回退到上一版本
$ git reset --hard 1094a
$ git reflog
7.look diff
$ git diff HEAD -- readme.txt
8.cancle change
$ git checkout -- readme.txt
$ git reset HEAD readme.txt ####把暂存区的修改撤销掉(unstage),重新放回工作区
9.remove
$ git rm test.txt
$ git commit -m "remove test.txt"
$ git checkout -- test.txt #####checkout
10.github version
$ ssh-keygen -t rsa -C "youremail@example.com" ####id_rsa是私钥,不能泄露出去,id_rsa.pub是公钥,可以放心地告诉任何人
https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/001374385852170d9c7adf13c30429b9660d0eb689dd43a000
11. add remote repertory
https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/0013752340242354807e192f02a44359908df8a5643103a000
$ git remote add origin git@github.com:michaelliao/learngit.git
$ git push -u origin master #### init first
$ git push origin master #### after
12.clone
$ git clone git@github.com:michaelliao/gitskills.git
$ cd gitskills
$ ls
out:README.md
13.branch
####查看分支: git branch
####创建分支: git branch <name>
####切换分支: git checkout <name>
####创建+切换分支: git checkout -b <name>
####合并某分支到当前分支: git merge <name>
####删除分支: git branch -d <name>
$ 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 checkout dev
14.conflict
$ git checkout -b feature1
$ git log --graph命令可以看到分支合并图。
15.通常,合并分支时,如果可能,Git会用Fast forward模式,但这种模式下,删除分支后,会丢掉分支信息 ,下面我们实战一下--no-ff方式的git merge
$ git merge --no-ff -m "merge with no-ff" dev ####注意--no-ff参数,表示禁用Fast forwar
16.当你接到一个修复一个代号101的bug的任务时,很自然地,你想创建一个分支issue-101来修复它,但是,等等,当前正在dev上进行的工作还没有提交
$ git stash ####把当前工作现场“储藏”起来,等以后恢复现场后继续工作
$ git stash list
$ git stash pop
$ git stash apply stash@{0}
17.通过git branch -D <name>强行删除。
18.多人协作
$ git remote
$ git remote -v
$ git push origin master
$ git push origin dev
$ git clone git@github.com:michaelliao/learngit.git
$ git branch
$ git checkout -b dev origin/dev
$ git add env.txt
$ git commit -m "add env"
$ git push origin dev
other change one thing
$ git branch --set-upstream-to=origin/dev dev
$ git pull
#### 手动解决冲突后提交
$ git commit -m "fix env conflict"
$ git push origin dev
####查看远程库信息,使用git remote -v;
####
####本地新建的分支如果不推送到远程,对其他人就是不可见的;
####
####从本地推送分支,使用git push origin branch-name,如果推送失败,先用git pull抓取远程的新提交;
####
####在本地创建和远程分支对应的分支,使用git checkout -b branch-name origin/branch-name,本地和远程分支的名称最好一致;
####
####建立本地分支和远程分支的关联,使用git branch --set-upstream branch-name origin/branch-name;
####
####从远程抓取分支,使用git pull,如果有冲突,要先处理冲突。
19.创建标签
$ git branch
$ git tag v1.0
$ git tag
$ git log --pretty=oneline --abbrev-commit
$ git tag v0.9 f52c633
$ git show v0.9
$ git tag -a v0.1 -m "version 0.1 released" 1094adb
####命令git tag <tagname>用于新建一个标签,默认为HEAD,也可以指定一个commit id;
####
####命令git tag -a <tagname> -m "blablabla..."可以指定标签信息;
####
####命令git tag可以查看所有标签。
20.操作标签
####命令git push origin <tagname>可以推送一个本地标签;
####
####命令git push origin --tags可以推送全部未推送过的本地标签;
####
####命令git tag -d <tagname>可以删除一个本地标签;
####
####命令git push origin :refs/tags/<tagname>可以删除一个远程标签。
21. 使用码云
$ git remote add origin git@gitee.com:liaoxuefeng/learngit.git
$ git remote -v
$ git remote rm origin
$ git remote add origin git@gitee.com:liaoxuefeng/learngit.git
$ git remote -v
$ git remote rm origin
$ git remote add github git@github.com:michaelliao/learngit.git
$ git remote add gitee git@gitee.com:liaoxuefeng/learngit.git
$ git remote -v
$ git push github master
$ git push gitee master
22.color
$ git config --global color.ui true
23.忽略特殊文件 特殊的.gitignore文件
$ git add -f App.class
$ git check-ignore -v App.class
####忽略某些文件时,需要编写.gitignore;
####.gitignore文件本身要放到版本库里,并且可以对.gitignore做版本管理!
24.配置别名
$ git config --global alias.st status
$ git config --global alias.co checkout
$ git config --global alias.ci commit
$ git config --global alias.br branch
$ git ci -m "bala bala bala..."
$ git config --global alias.unstage 'reset HEAD'
$ git unstage test.py
$ git reset HEAD test.py
$ git config --global alias.last 'log -1'
$ git last
$ 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"
####配置文件
####配置Git的时候,加上--global是针对当前用户起作用的,如果不加,那只针对当前的仓库起作用。
####
####配置文件放哪了?每个仓库的Git配置文件都放在.git/config文件中:
25.搭建Git服务器 https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/00137583770360579bc4b458f044ce7afed3df579123eca000
$ sudo apt-get install git
$ sudo adduser git
####收集所有需要登录的用户的公钥,就是他们自己的id_rsa.pub文件,把所有公钥导入到/home/git/.ssh/authorized_keys文件里,一行一个
$ sudo git init --bare sample.git
$ sudo chown -R git:git sample.git
$ git:x:1001:1001:,,,:/home/git:/bin/bash
$ git:x:1001:1001:,,,:/home/git:/usr/bin/git-shell
$ git clone git@server:/srv/sample.git
Git 命令简单罗列的更多相关文章
- Git命令简单总结
集中式vs分布式 svn集中式:版本库是集中存放在中央服务器的,需要联网才能工作 git 分布式:每个人的电脑上都是一个完整的版本库 和集中式版本控制系统相比,分布式版本控制系统的安全性要高很多,因为 ...
- git命令简单使用
git config --global user.name 'sss' git config --global user.email 'huahua@163.com' cd d:/mywork git ...
- 认识git的简单命令
一.课程目的 教大家学会it的简单命令(老师建议 English 的前后要加空格) 二.认识 git 命令 整篇文章都是用语雀写的. 解释了(使用git)绑定gitee的操作 https://www. ...
- 简单 常用的git命令
常用的git命令 git pull 获取最新 git add . 提交所有 git commit -m “我的注释” git status 查看状态 git push origin master ...
- 利用git工具命令简单的从github上拷贝和上传代码
第一:从github上拷贝项目到本地 1.在github上建立一个项目名为:MygitTest 2.在我们本地电脑上把这个项目拷贝下来:直接选择一个文件夹,右键选择git Bash here 直接 ...
- Git命令的简单整理大全
创建目录和查看路径 mkdir 创建目录 cd 进入到目录里面pwd 用于显示当前的目录cat 查看文件内容 Git命令使用说明 初始化一个目录成git的仓库(版本库)包括暂存区和ma ...
- git的简单理解及基础操作命令
前端小白一枚,最近开始使用git,于是花了2天看了廖雪峰的git教程(偏实践,对于学习git的基础操作很有帮助哦),也在看<git版本控制管理>这本书(偏理论,内容完善,很不错),针对所学 ...
- 我所记录的git命令(非常实用)
一.前言 记录一下工作中常用到的git命令,只是简单的笔记,欢迎大家交流... [ 顺便问下园友们,怎么感觉博客园发布的博客搜索有时都搜不到,后台编辑能填的都填写了,还是觉得搜索排名不高? 相同的标题 ...
- GIT命令行的使用
新手了解 有不对的地方指点下 首先, 了解下什么是GIT,GIT是一款开元的分布式版本控制工具, 在世界上的所有分布式版本控制工具中,GIT是最简单,最流行,同时也是最常用的 相比于其他版本的控制工具 ...
随机推荐
- Python学习---Python环境变量安装问题0907
问题背景: 重新安装操作系统后,原来的环境变量丢失[因Python3.5安装目录是E盘,文件还在,只是丢失了环境变量而已,添加即可] 问题解决: 方法一:使用cmd命令添加path环境变量 在cmd下 ...
- 用LinkedList
>用LinkedList模拟栈集合MyStack >MyStack测试类 用LinkedList模拟栈集合MyStack import java.util.LinkedList; ...
- iptables实战演练
iptables禁止 ip 10.10.10.1 访问本地80端口: iptables -t filter -I INPUT -s 10.10.10.1 -p tcp –dport 80 -j DRO ...
- 【Python求助】在eclipse和pycharm中,通过adb install安装中文名字APK时老是报错,如何解决
# -*- coding: utf-8 -*- import os import sys import subprocess import time from uiautomator import d ...
- python爬虫(三)
webdriver Selenium是ThroughtWorks公司开发的一套Web自动化测试工具.它分为三个组件:Selenium IDE,Selenium RC (Remote Control), ...
- Angular简介与程序架构
什么是angularJs 基于javascript开发的客户端应用框架,使我们可以更加快捷,简单的开发web应用. 诞生于2009年,后来被google收购,用在了很多项目中. 适用于CRUD应用或者 ...
- openresty火焰图安装
1.下载systemtap安装包并安装 从https://sourceware.org/systemtap/ftp/releases/下载最新版的systemtap.tar.gz压缩包 我安装的时候, ...
- QGis C++ 开发之创建临时图层并添加要素
开发环境:Win10 + VS2010 + Qt 4.8.6 + QGis 2.14.4 其实本文实现的功能类似于QGis中“添加文本数据图层”的一个简化版,本文不会涉及到对话框的使用 ...
- 使用Tortoise结合Git比较两个版本的差异
1.右键项目,TortoiseGit -------> Diff with previous version 2.单击出分支选择弹窗,进行选择要比较的两个分支 3.比较同个分支的两个不同的版本 ...
- C++使用默认参数的构造函数
我们可以想象一个这样的场景:某一天书店整理库存,发现了一些非常老的书,为了尽快清空库存,店主想了一下,决定开展一个大甩卖活动,所有的这些书全部以五美元的价格出售.此时如果需要尽快将这些书的信息录入到书 ...