(1)git
1.创建一个版本库
#创建一个文件夹
E:\>mkdir pythonGit
#进入文件夹
E:\>cd pythonGit
#把此目录创建成git版本库
E:\pythonGit>git init
Initialized empty Git repository in E:/pythonGit/.git/
会自动生成一个.git的文件夹,用来跟踪管理版本库。勿动
在pythonGit文件夹下手动建一个文件夹abc.txt
E:\pythonGit>cd.>abc.txt
2.提交到本地版本库
#文件添加到仓库
E:\pythonGit>git add abc.txt
#提交到仓库
E:\pythonGit>git commit -m "提交说明"
Aborting commit due to empty commit message.
#不加-m的话 commit后会进入文本编辑器,ESC+ZZ 可以保存退出
添加当前目录下所有文件
git add -A
如果提交时报错
*** Please tell me who you are
Run
git config --global user.email "you@example.com"
git config --global user.name "Your Name"
git config user.email "xxx@xxx"
git config user.name "xxx"
3.查看状态
修改文件内容后,使用git status 查看
#用来查看状态
E:\pythonGit>git status

4.查看修改的内容
#difference
E:\pythonGit>git diff abc.txt

按q退出
5.查看日志
查看提交的日志
E:\pythonGit>git log

红箭头就是每次提交时的说明,所以最好写的时候能看出修改的大概意图来

head表示当前版本
6.版本回退
本地回退
git reset --hard id号 回退到指定版本,版本号可以不写全,前几位就可以。
E:\pythonGit>git reset --hard 466e707b0f065964d57766bb06c8924f8cec6d9a
回退到上一个版本HEAD^ ,上上版本HEAD^^,回退100个版本 HEAD~100
#cmd下 要给^ 加个双引号
E:\pythonGit>git reset --hard HEAD"^"
7.跳回新版本
当你回退后,又想回到新版本的话,找到那个版本的id就可以了。
reflog记录了每次的命令
E:\pythonGit>git reflog
红箭头就是ID好

8.暂存区
使用git add指令,会把文件提交到一个暂存区,等使用commit指令时才算是正式进入版本库中。
没有被add的文件,使用commit指令不会被提交到版本库。
9.撤销修改
E:\pythonGit>git checkout -- abc.txt
有两种情况,
一、修改了没add。二、add完修改了。 使用撤销修改指令可以回到它的上一步
或者不小心右键删除后,也可以用此指令复原。
10.删除文件
E:\pythonGit>git rm abc.txt
E:\pythonGit>git commit
git rm 删除文件后 记得要提交
11.上传到远程库
在github上新建一个仓库python
点击
进入
复制ssh git@github.com:............

(1)关联远程库
E:\pythonGit>git remote add py git@github.com:xxx/python.git
其中 py 可以看做是个 ssh在本地起的别名。 后面的蓝色字体就是之前复制的ssh
这样就和远程建立了关联,
(2)推送到远程
把本地的master分支推送到远程的python仓库
E:\pythonGit>git push py master
第一次使用会有ssh警告

输入yes
(3)查看远程库
E:\pythonGit>git remote -v

(4)如果遇到报错

应该是秘钥问题。参考 (2)git本地生成SSH关联github
出现下面的图片,就成功了。

其中warning的警告 查了一下说是做个hosts映射就不会出现了,不过不影响使用
在hosts里添加一行
xxx.xxx.xxx.xxx github.com
(5)如果遇到这种错误/// 这个错误是新建码云遇到的

因为本地和远程代码不同步,需要先把md文件pull下来

dartapi 是远程网址在本地的别名
12.获取远程库
如果github上有文件的话,就不是默认能看到的了,需要点这个按钮复制ssh或者https


克隆到本地
E:\pythonGit>git clone git@github.com:xxx/python.git

成功后,会在当前目录下新建一个python的文件夹,克隆的数据都在这里面
显示中文文件名

(1)git的更多相关文章
- Git 子模块 - submodule
有种情况我们经常会遇到:某个工作中的项目需要包含并使用另一个项目. 也许是第三方库,或者你 独立开发的,用于多个父项目的库. 现在问题来了:你想要把它们当做两个独立的项目,同时又想在 一个项目中使用另 ...
- Git 在团队中的最佳实践--如何正确使用Git Flow
我们已经从SVN 切换到Git很多年了,现在几乎所有的项目都在使用Github管理, 本篇文章讲一下为什么使用Git, 以及如何在团队中正确使用. Git的优点 Git的优点很多,但是这里只列出我认为 ...
- Git与Repo入门
版本控制 版本控制是什么已不用在说了,就是记录我们对文件.目录或工程等的修改历史,方便查看更改历史,备份以便恢复以前的版本,多人协作... 一.原始版本控制 最原始的版本控制是纯手工的版本控制:修改文 ...
- Git Bash的一些命令和配置
查看git版本号: git --version 如果是第一次使用Git,你需要设置署名和邮箱: $ git config --global user.name "用户名" $ gi ...
- 在Ubuntu 16.10 安装 git 并上传代码至 git.oschina.net
1. 注册一个账号和创建项目 先在git.oschina.net上注册一个账号和新建一个project ,如project name 是"myTest". 2.安装git sudo ...
- 史上最详细git教程
题外话 虽然这个标题很惊悚,不过还是把你骗进来了,哈哈-各位看官不要着急,耐心往下看 Git是什么 Git是目前世界上最先进的分布式版本控制系统. SVN与Git的最主要的区别 SVN是集中式版本控制 ...
- [版本控制之道] Git 常用的命令总结(欢迎收藏备用)
坚持每天学习,坚持每天复习,技术永远学不完,自己永远要前进 总结日常开发生产中常用的Git版本控制命令 ------------------------------main-------------- ...
- 【解决方案】Myeclipse 10 安装 GIT 插件 集成 步骤 图解
工程开发中,往往要使用到集成GIT ,那么下面说说插件安装步骤 PS:以Myeclipse 10 为例,讲解集成安装步骤. ----------------------main------------ ...
- git 命令
切换仓库地址: git remote set-url origin xxx.git切换分支:git checkout name撤销修改:git checkout -- file删除文件:git rm ...
- git亲测命令
一.Git新建本地分支与远程分支关联问题 git checkout -b branch_name origin/branch_name 或者 git branch --set-upstream bra ...
随机推荐
- CPP-基础:cout
C++编程语言互换流中的标准输出流,需要iostream.h支持.读为 "c out". 使用范例 //用户输入的数字由cin保存于变量a中,并通过cout输出. #include ...
- Docker基础内容之网络基础
网络命名空间基本原理 单机版多容器实例网络交互原理 在宿主机上面打开两张网卡eth0与eth1,打通两张网卡的链路 在test1上面启动一个veth网卡,创建一个namespace:并桥接到eth0上 ...
- activiti整合开发实例总结
参考手册:http://www.mossle.com/docs/activiti/ 一.applicationContext.xml中引入activiti相关配置的xml文件 <!-- begi ...
- Java异常 Exception类及其子类
C语言时用if...else...来控制异常,Java语言所有的异常都可以用一个类来表示,不同类型的异常对应不同的子类异常,每个异常都对应一个异常类的对象. Java异常处理通过5个关键字try.ca ...
- MAC实现睡眠和休眠唤醒
因为苹果默认为休眠文件加密,Clover 是无法解密的.所以需要经过一些设置才能破除这无节操的加密文件sleepimage.在这之前不得不提下EmuVariableUefi-64.efi 这个驱动.我 ...
- cocos2d popSceneWithTransition()方法
要在CCDirector.h中增加如下方法: template <typename T> void popSceneWithTransition(float t) { CCASSERT(_ ...
- hihoCoder-1093-SPFA
SPFA的卓越之处就在于处理多点稀疏图,因为点太多的话,我们直接用矩阵来存图的话是存不下的. 所以当我们用邻接矩阵来存图的话,我们就可以用SPFA来解决这类问题,spfa就是优化版的bellman-f ...
- MYSQL数据库SQL语句集锦
*特别说明:FILED代表数据表字段,CONDITIONS代表where之后的条件,TABLENAME代表数据表名 []中括号内的内容代表 可有可无. 创建数据库 create database ...
- (57)zabbix Slide shows幻灯片展示
定义好screen之后,我们想了解服务器状况之时,一般会一个个screen点过去,zabbix提供了幻灯片展示方法,可以定义多个Slide,一个slide中可以包含多个screen. 创建slide ...
- 【Linux】用户与权限
追加用户组 groupadd 用户组名 追加新用户 useradd -d 指定用户目录 -s 指定用户使用shell -g 指定用户组 -p 指定用户密码 用户名 更改用户 添加用户到其他组 use ...