推送文件到远程仓库
管理本地仓库文件
简单的描述,在 Git 中文件有三种状态:已修改(modified)、已暂存(staged)、已提交(committed);用 Git 管理文件也可以简单的理解为三个步骤:修改文件、跟踪文件、提交文件。
以下采取示例的方式简述用 Git 管理本地仓库文件。
修改文件
修改文件即是对文件的添加、编辑、删除等等,和普通修改文件的方法一致。
选择合适的地方创建一个新目录『learn-git』,新建『readme.txt』 和『learn-git.txt』 文件,在中写入『I’m learning git.』这句话并保存。
跟踪文件(git add
)
创建文件和修改文件后需要把文件添加到仓库,即对文件进行跟踪。一次性把一个文件或多个文件添加到仓库都可以,用到的命令都是 git add
。
添加一个文件时直接在终端输入 git add
后面空一格输入完整的文件名(包含后缀,如.txt):
$ git add readme.txt
添加多个文件也类似,git add
后面空格输入完整的文件名,文件名之间用空格分隔:
$ git add readme.txt learn_git.txt
添加当前仓库里的所有文件时直接在终端输入$ git add .
,注意此处末尾的.
不要遗漏。
提交文件(git commit
)
用git commit
命令把文件提交到仓库,一次性会提交所有你已经添加的文件:
$ git commit -m "wrote a readme and a learn_git file"
[master (root-commit) 7c57f05] wrote a readme and a learn_git file
2 files changed, 2 insertions(+)
create mode 100644 learn_git.txt
create mode 100644 readme.txt
提交命令为git commit
,-m
后面引号中的内容是你的提交说明,下面几行是终端的返回结果。每次提交文件时都写个提交说明,以便清楚地了解做了什么修改。
$
符号是使用终端时自动输入的,用户并不需要输入此符号。
查看文件状态(git status
)
如何知道一个文件处于哪种状态?使用git statu
命令查看文件状态。
当前仓库里任何文件都没有被跟踪时返回结果如下:
$ git status
On branch master
Your branch is up-to-date with 'origin/master'
nothing to commit, working directory clean
当文件已跟踪但没有提交到仓库时返回结果如下:
$ git status
On branch master
Changes not staged for commit:
(use "git add ..." to update what will be committed)
(use "git checkout -- ..." to discard changes in working directory)
modified: learn_git.txt
modified: readme.txt
no changes added to commit (use "git add" and/or "git commit -a")
当文件已跟踪且已经提交到仓库时返回结果如下:
$ git status
On branch master
nothing to commit, working tree clean
使用 Git 管理文件时,每次结束工作前请依次执行
git add
和git commit
命令将文件提交到仓库。
随着用户深入使用 Git,会了解到更多 Git 知识,点击查看 Git 文件状态介绍 和 Git 常用命令速查表。
推送文件到远程仓库
添加远程仓库查看 添加远程仓库帮助。
推送代码到远程仓库
在终端运行命令
git push
将文件推送到远程仓库:
$ git push origin master Counting objects: 8, done. Delta compression using up to 4 threads. Compressing objects: 100% (4/4), done. Writing objects: 100% (8/8), 626 bytes | 626.00 KiB/s, done. Total 8 (delta 0), reused 0 (delta 0) To https://e.coding.net/coding/learn-git.git * [new branch] master -> master
git push
是推送命令,实际上是把本地的master
分支推送到了远程仓库,相当于在远程有了一个代码仓库的备份。使用 Git 管理文件时,每次结束工作前请依次执行
git add
、git commit
和git push
命令将文件推送到 CODING 远程仓库。
Git 文件状态介绍
- 已修改(modified) ———— 表示修改了文件,但还没保存到数据库中
- 已暂存(staged) ———— 表示对一个已修改文件的当前版本做了追踪,使之包含在下次提交的快照中
- 已提交(committed)———— 表示数据已经安全的保存在本地数据库中
初次克隆某个仓库时,工作目录中的所有文件都属于已跟踪文件,且状态为未修改。 在编辑过某些文件之后,Git 将这些文件标为已修改。我们逐步把这些修改过的文件放到暂存区域,直到最后一次性提交所有这些暂存起来的文件,如此重复。使用 Git 时的文件状态变化周期如图所示。

在阅读中是否遇到以下问题?
您希望我们如何改进?