学习使用GIT

1 安装git。

直接从Git官网直接下载安装程序,然后按默认选项安装即可。安装完成后,在开始菜单里找到“Git”->“Git Bash”,蹦出一个类似命令行窗口的东西,就说明Git安装成功!

2 创建一个版本库(repository)。

$ mkdir learngit    //创建文件夹
$ cd learngit       //进入文件夹
$ pwd               //现实当前路径
/Users/michael/learngit

3 通过git init命令把这个目录变成Git可以管理的仓库:

$ git init
Initialized empty Git repository in /Users/michael/learngit/.git/

4 添加文件  git add的时候必须在已经是git的目录下。

$ git add readme.txt

 提交文件

$ git commit -m "wrote a readme file"
[master (root-commit) eaadf4e] wrote a readme file
 1 file changed, 2 insertions(+)
 create mode 100644 readme.txt

git commit命令,-m后面输入的是本次提交的说明。

1 file changed:1个文件被改动(我们新添加的readme.txt文件);2 insertions:插入了两行内容(readme.txt有两行内容)。

5 git status命令。查看仓库状态。

$ git status
On branch master
Changes not staged for commit:
  (use "git add <file>..." to update what will be committed)
  (use "git checkout -- <file>..." to discard changes in working directory)

    modified:   readme.txt

no changes added to commit (use "git add" and/or "git commit -a")

6 git diff 查看修改了什么。

$ git diff readme.txt 
diff --git a/readme.txt b/readme.txt
index 46d49bf..9247db6 100644
--- a/readme.txt
+++ b/readme.txt
@@ -1,2 +1,2 @@
-Git is a version control system.
+Git is a distributed version control system.
 Git is free software.

git log命令 查看日志

$ git log
commit 1094adb7b9b3807259d8cb349e7df1d4d6477073 (HEAD -> master)
Author: Michael Liao <askxuefeng@gmail.com>
Date:   Fri May 18 21:06:15 2018 +0800

    append GPL

commit e475afc93c209a690c39c13a46716e8fa000c366
Author: Michael Liao <askxuefeng@gmail.com>
Date:   Fri May 18 21:03:36 2018 +0800

    add distributed

commit eaadf4e385e865d25c48e7ca9c8395c3f7dfaef0
Author: Michael Liao <askxuefeng@gmail.com>
Date:   Fri May 18 20:59:18 2018 +0800

    wrote a readme file

最近的一次是append GPL,上一次是add distributed,最早的一次是wrote a readme file

git reset命令,退回上一个版本。

$ git reset --hard HEAD^
HEAD is now at e475afc add distributed

在Git中,用HEAD表示当前版本,也就是最新的提交1094adb...(注意我的提交ID和你的肯定不一样),上一个版本就是HEAD^,上上一个版本就是HEAD^^,当然往上100个版本写100个^比较容易数不过来,所以写成HEAD~100

$ git reset --hard 1094a
HEAD is now at 83b0afe append GPL

也可以这样,退回版本号。

git reflog用来记录你的每一次命令。

10 git checkout -- file命令。撤销工作区的修改。也就是取消刚才的修改。

$ git reset HEAD readme.txt
Unstaged changes after reset:
M    readme.txt

11 删除文件

$ rm test.txt

远程仓库,关联github或者gitee。

第1步:创建SSH Key。在用户主目录下,看看有没有.ssh目录,如果有,再看看这个目录下有没有id_rsaid_rsa.pub这两个文件,如果已经有了,可直接跳到下一步。如果没有,打开Shell(Windows下打开Git Bash),创建SSH Key:

$ ssh-keygen -t rsa -C "youremail@example.com"

第2步:登陆GitHub,打开“Account settings”,“SSH Keys”页面:

然后,点“Add SSH Key”,填上任意名称,在Key文本框里粘贴id_rsa.pub文件的内容:

github-addkey-1

这一步的意思是把你本地git的密匙给了github或者gitee,这样他们就关联起来啦。

第三步:在github或者gitee建立仓库。最好名字和本地仓库一样。

github-create-repo-1

第四步 运行命令:

$ git remote add origin git@github.com:dongaifeng/learngit.git

这一步的意思是把本地项目跟你在github,gitee上的仓库关联起来。这个地址可以在github上找到。

第五步 就可以把本地库的所有内容推送到远程库上:

$ git push -u origin master
Counting objects: 20, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (15/15), done.
Writing objects: 100% (20/20), 1.64 KiB | 560.00 KiB/s, done.
Total 20 (delta 5), reused 0 (delta 0)
remote: Resolving deltas: 100% (5/5), done.
To github.com:michaelliao/learngit.git
 * [new branch]      master -> master
Branch 'master' set up to track remote branch 'master' from 'origin'.

git push命令,实际上是把当前分支master推送到远程。加上了-u参数,Git不但会把本地的master分支内容推送的远程新的master分支,还会把本地的master分支和远程的master分支关联起来,以后的推送就不用加了。

$ git clone git@github.com:michaelliao/gitskills.git

   git clone  是从远程库克隆到本地库。

git remote -v
origin    git@github.com:dongaifeng/learngit.git (fetch)
origin    git@github.com:dongaifeng/learngit.git (push)

git remote -v   是查看本地库都关联了什么远程库。

git remote rm origin

git remote rm   是删除关联 后面跟的是远程库名称。

 

 

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Cool people

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值