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的更多相关文章

  1. Git 子模块 - submodule

    有种情况我们经常会遇到:某个工作中的项目需要包含并使用另一个项目. 也许是第三方库,或者你 独立开发的,用于多个父项目的库. 现在问题来了:你想要把它们当做两个独立的项目,同时又想在 一个项目中使用另 ...

  2. Git 在团队中的最佳实践--如何正确使用Git Flow

    我们已经从SVN 切换到Git很多年了,现在几乎所有的项目都在使用Github管理, 本篇文章讲一下为什么使用Git, 以及如何在团队中正确使用. Git的优点 Git的优点很多,但是这里只列出我认为 ...

  3. Git与Repo入门

    版本控制 版本控制是什么已不用在说了,就是记录我们对文件.目录或工程等的修改历史,方便查看更改历史,备份以便恢复以前的版本,多人协作... 一.原始版本控制 最原始的版本控制是纯手工的版本控制:修改文 ...

  4. Git Bash的一些命令和配置

    查看git版本号: git --version 如果是第一次使用Git,你需要设置署名和邮箱: $ git config --global user.name "用户名" $ gi ...

  5. 在Ubuntu 16.10 安装 git 并上传代码至 git.oschina.net

    1. 注册一个账号和创建项目 先在git.oschina.net上注册一个账号和新建一个project ,如project name 是"myTest". 2.安装git sudo ...

  6. 史上最详细git教程

    题外话 虽然这个标题很惊悚,不过还是把你骗进来了,哈哈-各位看官不要着急,耐心往下看 Git是什么 Git是目前世界上最先进的分布式版本控制系统. SVN与Git的最主要的区别 SVN是集中式版本控制 ...

  7. [版本控制之道] Git 常用的命令总结(欢迎收藏备用)

    坚持每天学习,坚持每天复习,技术永远学不完,自己永远要前进 总结日常开发生产中常用的Git版本控制命令 ------------------------------main-------------- ...

  8. 【解决方案】Myeclipse 10 安装 GIT 插件 集成 步骤 图解

    工程开发中,往往要使用到集成GIT ,那么下面说说插件安装步骤 PS:以Myeclipse 10 为例,讲解集成安装步骤. ----------------------main------------ ...

  9. git 命令

    切换仓库地址: git remote set-url origin xxx.git切换分支:git checkout name撤销修改:git checkout -- file删除文件:git rm  ...

  10. git亲测命令

    一.Git新建本地分支与远程分支关联问题 git checkout -b branch_name origin/branch_name 或者 git branch --set-upstream bra ...

随机推荐

  1. node mocha mochawesome报安装不成功

    1.进行cnpm安装: npm install cnpm -g --registry=https://registry.npm.taobao.org 2.查看cnpm版本 cnpm -v 3.安装mo ...

  2. 美可能排除中国大陆制造/生产的所有5G产品

    https://www.wsj.com/articles/u-s-considers-requiring-5g-equipment-for-domestic-use-be-made-outside-c ...

  3. 开发工具IDEA环境安装配置

    开发工具IDEA环境安装配置 该工具和eclipse类似,但是使用感受确实比eclipse好,越来越多人开始使用IDEA了. 下载地址如下 : https://www.jetbrains.com/id ...

  4. HDU-1009-肥鼠交易

    这题是一道简单的可拆分的贪心题目,需要注意的是,我们定义的结构体里面都应该用double类型, 或者float类型,不然两个int相除,就失去了精度(强转也可以). #include <cstd ...

  5. 自动化运维工具Ansible

    一.简介 当下有许多的运维自动化工具( 配置管理 ),例如:Ansible.SaltStack.Puppet.Fabric 等. Ansible 一种集成 IT 系统的配置管理.应用部署.执行特定任务 ...

  6. 身为前端开发工程师,你需要了解的搜索引擎优化SEO.

    网站url网站创建具有良好描述性.规范.简单的url,有利于用户更方便的记忆和判断网页的内容,也有利于搜索引擎更有效的抓取您的网站.网站设计之初,就应该有合理的url规划. 处理方式: 1.在系统中只 ...

  7. c++-string-1

    解答注意: 我写的时候考虑了: 1) "     my"(设置flag,为true时表示上一个是非空格字符) 2) "hello John"(最后不是空格结尾, ...

  8. STM32L0开发——ADC多通道采集,IDE和IAR开发注意事项

    keil开发L0系列是免费的,官方提供许可的.因此建议Keil开发,L011F3由于flash只有8K,因此不建议HAL库,建议使用cubemx+LL(或snippets库).0.起初,可以参考官方库 ...

  9. Wannafly挑战赛23 A 字符串

    题目描述 小N现在有一个字符串S.他把这这个字符串的所有子串都挑了出来.一个S的子串T是合法的,当且仅当T中包含了所有的小写字母.小N希望知道所有的合法的S的子串中,长度最短是多少. 输入描述: 一行 ...

  10. js根据银行卡号判断属于哪个银行,并返回银行缩写及银行卡类型

      在做绑定银行卡,输入银行卡的时候,产品有这么一个需求,需要用户输入银行卡号的时候,显示对应的银行卡名称及简称.于是苦苦寻觅,终于找到了支付宝的开放API,银行卡校验接口 https://ccdca ...