Git – 添加文件

新建文件

要添加新文件,可以在工作目录直接创建文件,我们创建了一个test1.txt,查看一下工作目录中的文件:

Kevin@qikegu MINGW64 /g/project/git-demo (master)
$ ls -al
total 10
drwxr-xr-x 1 Kevin 197121  0  8月 19 11:03 ./
drwxr-xr-x 1 Kevin 197121  0  8月 18 12:22 ../
drwxr-xr-x 1 Kevin 197121  0  8月 18 17:59 .git/
-rw-r--r-- 1 Kevin 197121 10  8月 18 12:22 README.md
-rw-r--r-- 1 Kevin 197121  9  8月 19 11:04 test1.txt

此处使用的命令行是 git Bash,文件管理器切换到项目目录,右键菜单->执行git Bash here

使用 git status 查看状态

工作目录中有2种文件:

  • git已跟踪文件
  • git未跟踪文件

要查看工作目录中文件的跟踪状态,可以运行git status

Kevin@qikegu MINGW64 /g/project/git-demo (master)
$ git status
On branch master
Your branch is up to date with 'origin/master'.

Untracked files:
  (use "git add <file>..." to include in what will be committed)

        test1.txt

nothing added to commit but untracked files present (use "git add" to track)

git status会告诉你当前分支是什么,本地仓库是否与远程仓库不同,以及已跟踪和未跟踪文件的状态。

可以看到,test1.txt未跟踪,命令建议使用git add <file>...把新文件添加到暂存区。

使用 git add 把文件添加到暂存区

提交(commit)往往意味着一个有意义的修改,比如修复了一个bug。但有时修复一个bug,要修改很多文件,在工作过程中,你想让这些中间过程中的修改也有跟踪,这就是暂存区的作用,任何小修改都可以放进暂存区。

如下图所示,当你按照建议执行git add test1.txt,文件test1.txt会被添加到暂存区,暂存区可以收集要提交到本地仓库的所有更改:

图

执行git add test1.txt命令把文件添加到暂存区,然后使用git status检查文件状态:

Kevin@qikegu MINGW64 /g/project/git-demo (master)
$ git add test1.txt

Kevin@qikegu MINGW64 /g/project/git-demo (master)
$ git status
On branch master
Your branch is up to date with 'origin/master'.

Changes to be committed:
  (use "git reset HEAD <file>..." to unstage)

        new file:   test1.txt

可以看到test1.txt已经不是未跟踪状态了。

使用 git commit 提交暂存区中内容

提交(commit)意味着一个有意义的修改,所以提交时会要求输入本次提交的描述信息。当你觉得暂存区中的更改可以提交了(现在只添加了test1.txt),可以使用git commit命令提交到本地仓库。如下图所示:

图

执行git commit命令,提交暂存区中的内容。执行命令时,将打开一个文本编辑器,让你输入一条本次修改的描述信息,保存并关闭消息文件时,提交的内容将添加到本地仓库。

Kevin@qikegu MINGW64 /g/project/git-demo (master)
$ git commit
hint: Waiting for your editor to close the file...
[master 9441f90] add test1.txt
 1 file changed, 1 insertion(+)
 create mode 100644 test1.txt

也可以直接在提交命令行中添加描述信息,命令格式如下所示:

git commit -m "add test1.txt"

使用 git push 把本地仓库中的更新推送到远程仓库

现在,你的更改位于本地存仓库中。如果要分享你的修改,或者本地存储不安全想保存到远程仓库,可以使用 git push 把本地仓库中的更新推送到远程仓库。这个命令执行的过程,如下图所示:

图

执行git push命令:

$ git push
Enumerating objects: 4, done.
Counting objects: 100% (4/4), done.
Delta compression using up to 4 threads
Compressing objects: 100% (2/2), done.
Writing objects: 100% (3/3), 286 bytes | 143.00 KiB/s, done.
Total 3 (delta 0), reused 0 (delta 0)
To https://github.com/kevinhwu/git-demo.git
   e1b9b71..9441f90  master -> master

执行git push后,远程仓库内容将与本地仓库内容一致,各个部分状态如下图所示:

图



浙ICP备17015664号 浙公网安备 33011002012336号 联系我们 网站地图  
@2019 qikegu.com 版权所有,禁止转载