热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Git的初级使用指南

配置用户名和邮箱$gitconfig--globaluser.nameYourName$gitconfig--globaluser.emailmail@ma

配置用户名和邮箱

$ git config --global user.name "Your Name"
$ git config --global user.email "mail@mail.com"

其中--global参数,表示你这台机器上所有的Git仓库都会使用这个配置,当然也可以对某个仓库指定不同的用户名和Email地址。

创建版本库

首先进入你想进行版本控制的文件夹,即令其成为工作目录,然后执行

$ git init

即可将这个目录变成Git可以管理的仓库,可以发现当前目录下多了一个隐藏的目录.git,这个目录是Git来跟踪管理版本库的,一般来说不需要手动修改这个目录里面的文件,否则可能造成破坏。

把文件添加到版本库

把一个文件放到Git仓库只需要两步。

第一步,用命令git add告诉Git,把文件添加到仓库:

$ git add readme.md

执行上面的命令,没有任何显示,说明添加成功。可以添加完所有自己想提交的文件后再进行下一步

第二步,用命令git commit告诉Git,把文件提交到仓库:

$ git commit -m "wrote a readme markdown file"

对于git commit命令,-m后面输入的是本次提交的说明,最好输入有意义的内容,这样你就能从历史记录里方便地找到改动记录。

添加远程仓库

$ git remote add origin gitAddress

添加后,远程仓库的名字就是origin,这是Git对远程仓库的默认的叫法可以更改,gitAddress指的是git的地址

推送文件到远程仓库

远程仓库如果是空的,我们第一次推送master分支时,直接使用如下命令

$ git push -u origin master

把当前分支master推送到远程仓库。
加上了-u参数,Git不但会把本地的master分支内容推送的远程新的master分支,还会把本地的master分支和远程的master分支关联起来,在以后的推送或者拉取时就可以简化命令。

之后只要本地作了提交,就可以通过命令

$ git push origin master

把本地master分支的最新修改推送至远程仓库。

远程仓库如果已经有文件了,比如是公司的项目或者团队的项目之类的,就需要先将项目下载以后进行修改,然后add,commit,push

从远程仓库克隆

用命令git clone克隆一个本地仓库:

$ git clone gitAddress

抓取更改

从远程仓库抓取更改的命令很简单:

$ git pull

即可将更改应用到本地仓库,其他人做过的修改就可以应用了。

检查本地更改

$ git checkout -f

使本地仓库与远程仓库同步

$ git clean -xdf

修改commit的信息

  • 在git中,其commit提供了一个–amend参数,可以修改最后一次提交的信息.
$ git commit --amend 

然后在出来的编辑界面中,直接对上次提交的注释进行编辑。

  • git使用amend选项提供了最后一次commit的修改。但是对于历史提交则需要用到rebase。

比如假设要修改当前版本的倒数第三次状态。

$ git rebase -i HEAD~3 

这个命令执行完后也会出现一个编辑页面,把你要修改的提交前面的pick改为edit,然后保存退出:

这时通过git log你可以发现,git的最后一次提交已经变成你选的那个了,这时再使用:

$ git commit --amend 

来对commit进行修改。 修改完了之后,为了回到最后一次提交的状态,使用:

$ git rebase --continue 

参考网站 Git教程-廖雪峰的网站


推荐阅读
  • 初始化初始化本地空版本库,仓库,英文名repositorymkdirtest&&cdtestgitinit克隆项目到本地gitclone远程同 ... [详细]
  • 先记住几个专用名词,如下:Workspace:工作区IndexStage:暂存区Repository:仓库区(或本地仓库)Remote:远程仓库一、新建代码库#在当前目录新建一个G ... [详细]
  • imx6ull开发板驱动MT7601U无线网卡的方法和步骤详解
    本文详细介绍了在imx6ull开发板上驱动MT7601U无线网卡的方法和步骤。首先介绍了开发环境和硬件平台,然后说明了MT7601U驱动已经集成在linux内核的linux-4.x.x/drivers/net/wireless/mediatek/mt7601u文件中。接着介绍了移植mt7601u驱动的过程,包括编译内核和配置设备驱动。最后,列举了关键词和相关信息供读者参考。 ... [详细]
  • vuepress是Vue驱动的静态站点生成工具本文仅介绍,搭建静态博客的过程,具体教程及文档请点击进入vuepress中文网点击查看项目代码vuepress初始化下面初始化#将github新创建的仓库克隆到本地 ... [详细]
  • 本文讨论了clone的fork与pthread_create创建线程的不同之处。进程是一个指令执行流及其执行环境,其执行环境是一个系统资源的集合。在调用系统调用fork创建一个进程时,子进程只是完全复制父进程的资源,这样得到的子进程独立于父进程,具有良好的并发性。但是二者之间的通讯需要通过专门的通讯机制,另外通过fork创建子进程系统开销很大。因此,在某些情况下,使用clone或pthread_create创建线程可能更加高效。 ... [详细]
  • 树莓派语音控制的配置方法和步骤
    本文介绍了在树莓派上实现语音控制的配置方法和步骤。首先感谢博主Eoman的帮助,文章参考了他的内容。树莓派的配置需要通过sudo raspi-config进行,然后使用Eoman的控制方法,即安装wiringPi库并编写控制引脚的脚本。具体的安装步骤和脚本编写方法在文章中详细介绍。 ... [详细]
  • 本文详细介绍了git常用命令及其操作方法,包括查看、添加、提交、删除、找回等操作,以及如何重置修改文件、抛弃工作区修改、将工作文件提交到本地暂存区、从版本库中删除文件等。同时还介绍了如何从暂存区恢复到工作文件、恢复最近一次提交过的状态,以及如何合并多个操作等。 ... [详细]
  • Gitlab接入公司内部单点登录的安装和配置教程
    本文介绍了如何将公司内部的Gitlab系统接入单点登录服务,并提供了安装和配置的详细教程。通过使用oauth2协议,将原有的各子系统的独立登录统一迁移至单点登录。文章包括Gitlab的安装环境、版本号、编辑配置文件的步骤,并解决了在迁移过程中可能遇到的问题。 ... [详细]
  • CentOS7.8下编译muduo库找不到Boost库报错的解决方法
    本文介绍了在CentOS7.8下编译muduo库时出现找不到Boost库报错的问题,并提供了解决方法。文章详细介绍了从Github上下载muduo和muduo-tutorial源代码的步骤,并指导如何编译muduo库。最后,作者提供了陈硕老师的Github链接和muduo库的简介。 ... [详细]
  • ps:写的第一个,不足之处,欢迎拍砖---只是想用自己的方法一步步去实现一些框架看似高大上的小功能(比如说模型中的toArraytoJsonsetAtt ... [详细]
  • 修正我的GitHub commit 数据
    早晨上班,滴滴搭车里,我在掘金这个帖子看到大家晒自己的Github活跃记录,我也晒了下自己的记录。不过太少了。有遗漏的commits状况这也让我知道,自己觉得自己很忙的,实际上提交 ... [详细]
  • 1.码云上根据需求创建项目;2.进入项目——克隆下载 选择复制SSH3.clone码云上的项目到本地:在相关目录(如A)下运行终端,执行指令:gitclone复制的SSH地址;  ... [详细]
  • 使用npmi编译vue项目出现无法下载github.com中的对应的包源文件报错信息如下:npmERR!fatal:unabletoaccess'https:github ... [详细]
  • Word2vec,Fasttext,Glove,Elmo,Bert,Flairpre-trainWordEmbedding源码数据Github网址:词向量预训练实现Githubf ... [详细]
  • 本文介绍了在Linux下安装Perl的步骤,并提供了一个简单的Perl程序示例。同时,还展示了运行该程序的结果。 ... [详细]
author-avatar
永无止境
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有