最近也学习了Git的相关知识,现通过一个实例来记录Git使用流程,也方便日后使用。

git的基础学习:

https://www.yiibai.com/git/git-quick-start.html

git的实践

一. 环境:

使用https://gitee.com 码云搭建一个项目远程仓库,使用本地机器作为客户端,作为本地仓库。

二. 使用流程

  • 在码云上注册账号,然后登录,新建一个项目,即远程仓库

        

  • 将新建的远程仓库clone到本地

从上右图可以看到,clone仓库有几种方式,一种是https,一种是使用ssh。我们这里使用ssh,首先在个人账号中的设置中配置本地的ssh公钥。

再使用 git clone + 上右图中的SSH代码,将刚才新建的test_git项目clone到本地。

  

  • 常见操作

都知道git的三个工作区域,一个是仓库区、暂存区、工作区,我们一般在工作区中修改代码。git目录中的文件主要有两种状态,一种是被git 跟踪的(tracked) 一种是未被git跟踪的(untracked)。被git 跟踪的那些文件就能使用git进行版本管理。被跟踪的文件主要有三种状态:已修改、已暂存、已提交,已修改是代码在工作区中修改过了,已暂存代表修改代码已保存到暂存区中,已提交代表代码已被提交到仓库中。

1. git status 查看文件状态

- git status –s 查看文件的简要状态

2. git add 将未跟踪文件加入到暂存区中或者将对已暂存的文件修改后加入暂存区

3. git diff : 显示文件具体的变化,git status 只能显示到具体那个文件状态,并不能显示具体内部的变化。同时git diff 显示的是未暂存的变化

- git diff --cached  显示已暂存的变化

4. git commit –m 注释 : 提交代码

- git commit –a  将所有的未暂存代码添加到暂存区中,然后将所有的暂存区代码提交

- git commit --amend 尝试重新提交

5. git log 查看提交历史

- git log -p : 显示每次提交的差异

- git log -2 : 显示最近两次的提交

- git log --stat : 每次提交的简约信息

- git log --pretty=online,short,full,fuller : 按照不同的格式输入提交信息

6. git push remote-branch local-branch : 将本地分支push到远程分支中

Git 实践的更多相关文章

  1. 记一次小团队Git实践(下)

    在上篇中,我们已经能基本使用git了,接下来继续更深入的挖掘一下git. 更多的配置自定义信息 除了前面讲的用户名和邮箱的配置,还可以自定义其他配置: # 自定义你喜欢的编辑器,可选 git conf ...

  2. 记一次小团队Git实践(中)

    对于初学者,从使用上先入手,往往学的最快,并从中汲取教训,再回头更深入的学习,效果尤佳. 安装git 安装git自不必说,mac已经内置了git,linux下一个命令就能搞定,windows下需要下载 ...

  3. 记一次小团队Git实践(上)

    公司规模不大,成立之初,选择了svn作为版本控制系统.这对于用惯了git的我来说,将就了一段时间后,极为不爽,切换到git-svn勉强能用.随后,因为产品需要发布不同的版本,而git-svn对远程分支 ...

  4. git实践笔记

    title: git实践笔记 date: 2016-10-15 18:40:26 tags: [Git] categories: [Tool,Git] --- 概述 本文记录常用 git 的功能和命令 ...

  5. GIT实践:同步远程分支

    GIT实践:同步远程分支 克隆远程仓库对应分支 克隆时指定分支,语法为:git clone -b 分支名 远程地址. 同步远程分支 更新远程分支 当Git仓库地址发生变化后,首先更新远程地址 git ...

  6. git实践:对比svn

    先前只用过svn,自然也没有去对比什么好坏,亲自上手之后发现svn和git实在是有很多不同 svn优点: 学习成本对比非常低 服务器公司统一控制管理 安全机制, 不会每个人都拷贝一份, 可以对组员限制 ...

  7. git 学习笔记 Git实践

    网上有很多教程,这里我自己做下整理,省得有时忘记,有道是好记性不如烂博客! 先大概描述下Git的各种命令: git init                     #初始化 git clone   ...

  8. 团队中的 Git 实践

    转载自:https://segmentfault.com/a/1190000004963641 本文首发于欧雷流.由于我会时不时对文章进行补充.修正和润色,为了保证所看到的是最新版本,请阅读原文. 在 ...

  9. git实践

    撤销提交 根据–soft –mixed –hard,会对working tree和index和HEAD进行重置: git reset –mixed:此为默认方式,不带任何参数的git reset,即时 ...

随机推荐

  1. install python+twisted+mysqldb+django on mac

    一. install python 1) check install or not 在mac终端输入命令:which python 即可查看python的路径 2)未安装时,手动下载安装包 地址:ht ...

  2. (新手入门,学习笔记)通过NPM进行Vue.js的安装

    NPM是随同NodeJS一起安装的包管理工具,能解决NodeJS代码部署上的很多问题,本文只介绍如何通过NPM进行安装Vue.js NodeJS官方网站:http://nodejs.cn/downlo ...

  3. python之模块导入和包

    一.何为模块 1.一个模块就是一个包含了python定义和声明的文件,文件名就是模块名字加上.py的后缀. 2.模块目的和函数,对象等一样,是为了代码的复用性而存在的.即一个py程序写了很多功能,也可 ...

  4. 解决springmvc 乱码的方法

    post乱码: 在web.xml添加post乱码filter: <filter> <filter-name>CharacterEncodingFilter</filter ...

  5. ie10兼容问题 -- 将div定位absolute在图片img上面,导致div点击事件无效

    ie10兼容问题: 将div定位absolute在图片img上面,发现div若不加背景色,导致div点击事件(任何事件)无效. <div class="paper-box"& ...

  6. 一、在 ASP.NET Core 中使用 SignalR

    一.介绍 SignalR 是一个用于实现实时网站的 Microsoft .NET 库.它使用多种技术来实现服务器与客户端间的双向通信,服务器可以随时将消息推送到连接的客户端. https://docs ...

  7. python--线程锁,队列

    #线程数据安全处理--同步锁 import time def sub(): global num print("ok") lock.acquire()#获取这把锁--->只有 ...

  8. Codeforces 矩阵题 题单

    Matrix CF 166E Tetrahedron dp方程设为 f[i] 最后在 D点,g[i] 表示最后不在D点.最后 g[] 可以通过矩阵加速数列求得,数据可以强化,复杂度 \(O(logn) ...

  9. js赋值后 改变现有数据会修改原来的数据

    看代码: let obj1 = { name: '张三', age: , sex: '男' } let obj2 = obj1 console.log('obj2:', obj2) obj2.age ...

  10. bzoj4764 弹飞大爷 LCT

    题目传送门 https://lydsy.com/JudgeOnline/problem.php?id=4764 题解 如果 \(a_i > 0\) 的话,那么就是 bzoj2002 的原题.直接 ...