git使用

48 阅读2分钟

源自【编程狮】<git 微课>的学习记录

Git 的一般工作流程如下:

  • 克隆 Git 资源作为工作目录。
  • 在克隆的资源上添加或修改文件。
  • 如果其他人修改了,你可以更新资源。
  • 在提交前查看修改。
  • 提交修改。
  • 在修改完成后,如果发现错误,可以撤回提交并再次修改并提交

git 工作流

1. 创建版本库:

$ git init
Initialized empty Git repository in E:/gitStudy/.git/

2. 添加到暂存区

在本地git目录下创建两个文件

$ git status -s 	# 查看项目的当前状态 -s表示查看的是简要信息
?? README
?? hello.php

$ git add README hello.php	# 添加
$ git status -s
A  README
A  hello.php

修改README文件,里面随意增加一些内容

$ git status -s
AM README
A  hello.php

AM表示添加到版本库后又对该文件进行了修改,重新add一下即可

git add . :使用它会把工作时的所有变化提交到暂存区,包括文件内容修改(modified)以及新文件(new),但不包括被删除的文件。

git add -u :他只会将被修改的文件提交到暂存区。add -u 不会提交新文件。

git add -A :是上面两个功能的合集, 也就是说包括删除的文件也会被提交

3. 查看改动

git diff  # 尚未缓存的改动
git diff --cached  # 查看已缓存的改动: 
git diff HEAD  # 查看已缓存的与未缓存的所有改动:
git diff --stat  # 显示摘要而非整个diff

4. 向仓库提交代码

使用 git add 命令将想要快照的内容写入缓存区, 执行 git commit 将缓存区内容添加到仓库中

Git 为你的每一个提交都记录你的名字与电子邮箱地址,所以第一步需要配置用户名和邮箱地址

$ git config --global user.name "xuzhonghui"
$ git config --global user.email 123456789@qq.com

然后进行提交操作

$ git commit -m 'git study'
[master e1d7bdc] git study
 2 files changed, 4 insertions(+)
 create mode 100644 new.txt

如果觉得每次要先add再commit太繁琐,可以使用-a参数

$ git commit -am 'git study: commit -a'
[master 8ab9364] git study: commit -a
 1 file changed, 1 insertion(+), 1 deletion(-)

$ git status -s

5. 取消已缓存的内容

git reset HEAD 命令用于取消已缓存的内容 这里为了方便理解,使用截图进行查看 image.png

6. 从版本库中删除文件

git rm 从版本库中删除文件 git rm -r 递归删除 git rm -f 如果删除之前修改过并且已经放到暂存区域的话,则必须要用强制删除选项 -f git rm --cached <file>如果把文件从暂存区域移除,但仍然希望保留在当前工作目录中

还是放个图简单说明下 git rm --cached

$ git commit -am 'study git'  # 提交刚刚添加到缓存的new.txt文件到版本库
[master 86e5e4b] study git   
 1 file changed, 1 insertion(+)

$ git status -s  # 查看下状态
D  new.txt

$ ls  
hello.php  README

如果只是简单地从工作区中手工删除文件,运行 git status 时就会在 Changes not staged for commit 的提示。 1、如果确实要从版本库中删除该文件,那就用命令 git rm 删掉,并且 git commit 2、如果是删错了,因为版本库里还有,使用git checkout -- <file> 把误删的文件恢复到最新版本

7. 移动/重命名

通过下面的例子可以看到改名成功后,ls查看文件,已经无法看到原文件了,git status -s可以看到删除了一个new.txt新增了一个new

$ git add .
$ git status -s
M  new.txt
$ git mv new.txt new
$ ls
hello.php  new  README
$ git status -s
A  new
D  new.txt

8. 添加远程仓库

gitHub 是一个面向开源及私有软件项目的托管平台,因为只支持git 作为唯一的版本库格式进行托管,故名 gitHub。

我们使用 gitHub 创建一个在线仓库, 然后将其与本地仓库关联 源自【编程狮】<git 微课>的学习记录 我们在 Repository name 填写 gitlearn 其他保持默认设置,点击“Create repository”按钮,就成功地创建了一个新的Git仓库: 源自【编程狮】<git 微课>的学习记录