Git命令——创建本地仓库&本地仓库与远程仓库的关联

本文在第一部分记录了如何在本地创建git仓库,以及git的几个常用命令。第二部分记录本地仓库与远程仓库如何关联,以实现这两个仓库的远程同步。这样,GitHub上的仓库既可以作为备份,又可以让其他人通过该仓库来协作。第三部分是github对忽略文件的配置文件。

一、创建本地仓库

1.创建代码仓库

打开Git Bash ,进入到项目根目录下面,命令为 cd /d/XXX,或者(cd d:)一级一级进入项目根目录。

然后,输入命令git init创建本地代码仓库。

2.忽略文件.gitignore

.gitignore文件允许用户将指定的文件或目录排除在版本控制之外。Git会检查代码仓库的目录下是否存在该文件,如果存在,则一行一行读取文件的内容,并把每一行指定的文件或目录排除在版本控制之外。

3.提交代码到本地仓库

命令:git add .         该命令将所有文件(除.gitignore文件中指定的文件或目录)提交到索引库中。

命令:git commit -m "提交注释"        该命令将索引库中的文件提交到本地仓库。

4.查看修改内容

代码提交后,可以查看距上次代码提交后又修改的情况。命令:git status

modified 指的就是距上次代码提交后,又修改的文件。Git提示代码已修改但还尚未提交。

查看具体更改的内容,命令git diff

“-”代表删除的部分,“+”代表增加的部分,上述代码的意思是,将price的值由“22”更改为了“22.23”。

如果,想要查看具体某个文件的更改内容,可以使用如下命令:

git diff app/src/main/java/com/company/xingnana/providertest/MainActivity.java

其实,git diff 后面跟着的就是查出来的修改的文件

5.撤销代码修改

如果代码尚未提交,即还未执git add命令,则可以对已经修改的代码进行撤销。如,撤销上面price的修改代码

命令:git checkout app/src/main/java/com/company/xingnana/providertest/MainActivity.java

nothing to commit 说明撤销成功!

如果代码已经添加到索引库,即执行了git add命令,那么需要先撤销添加,然后再撤销修改。

第一步,撤销添加,git reset HEAD app/src/main/java/com/company/xingnana/providertest/MainActivity.java

第二步,撤销修改,git checkout app/src/main/java/com/company/xingnana/providertest/MainActivity.java

通过命令git status 可以看到nothing to commit ,文件变成了未修改前的状态,表明修改撤销成功!

6.查看历史提交记录

如果提交次数过多,可以通过git 查看以往历次提交记录。提交记录包括:提交Id(commit id),提交人,提价日期,提交描述。

修改部分代码,将price的值由“22”更改为了“22.23”。然后提交,通过git log 查看提交记录,最近的修改靠前显示。

当提交记录比较多时,只需要有提交id,还可以查看某次的提交记录.

命令:git log 8c275765997ef65ef1127e35eeb4a2e37190976e -1 (-1代表只看一行记录)

如果想查看提交记录具体修改了什么内容,可以增加参数-p

git log 8c275765997ef65ef1127e35eeb4a2e37190976e -1 -p

同样地,“-”代表删除的部分,“+”代表增加的部分,上述代码的意思是,将price的值由“22”更改为了“22.23”。

二、本地仓库与远程仓库关联

(1)本地已经有git仓库

上述已经在本地创建了一个Git仓库,现在又想在GitHub创建一个Git仓库,并且让这两个仓库进行远程同步,这样,GitHub上的仓库既可以作为备份,又可以让其他人通过该仓库来协作。

添加远程库

1.在GitHub先创建一个repository

2.将新创建的远程仓库与本地仓库关联

刚创建的仓库是空的,通过如下命令,将已有的本地仓库与之关联,然后,把本地仓库的内容推送到GitHub仓库。

$ git remote add origin git@github.com:X-NaN/RedmineCrawler.git

添加后,远程库的名字就是origin,这是Git默认的叫法,也可以改成别的,但是origin这个名字一看就知道是远程库。

3.将本地仓库内容推送到远程仓库

#第一次推送,增加 -u 参数,Git会把本地的master分支内容推送到远程新的master分支,而且还会把本地的master分支和远程的master分支关联起来,在以后的推送或者拉取时就可以简化命令。
$ git push -u origin master 
#简化的命令
$ git push origin master

把本地库的内容推送到远程,用git push命令,实际上是把当前分支master推送到远程。

在推送时可能会遇到下面的问题,这是因为需要把Gitbub添加到hosts。

 解决方法:C:\Windows\System32\drivers\etc\hosts  文件中添加一行:13.250.177.223  github.com

以上介绍的都是先创建本地仓库,然后创建远程仓库,再把本地仓库关联到远程仓库。

其实,比较好的方式是先创建远程仓库,再把远程仓库clone到本地。这样比较简单

$ git clone git@github.com:X-NaN/RedmineCrawler.git

(2)本地没有git仓库

第一步:现在github创建远程仓库;

第二步:git clone到本地;

第三不:在本地仓库目录中创建工程;

注:这种方式就可以避免设置ssh key

 

三、Git忽略文件:.gitignore

忽略文件的原则是:

  1. 忽略操作系统自动生成的文件,比如缩略图等;
  2. 忽略编译生成的中间文件、可执行文件等,也就是如果一个文件是通过另一个文件自动生成的,那自动生成的文件就没必要放进版本库,比如Java编译产生的.class文件;
  3. 忽略你自己的带有敏感信息的配置文件,比如存放口令的配置文件。

github已经有大部分需要忽略文件的配置文件:github/gitignore 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值