1. 项目协同
  2. 代码仓库
  3. DevOps 实践之旅
  4. 一分钟开始持续集成之旅
  5. 持续部署
  6. 制品库

推送文件到远程仓库

管理本地仓库文件

简单的描述,在 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 addgit commit命令将文件提交到仓库。

随着用户深入使用 Git,会了解到更多 Git 知识,点击查看 Git 文件状态介绍 和 Git 常用命令速查表。

推送文件到远程仓库

  1. 添加远程仓库查看 添加远程仓库帮助。

  2. 推送代码到远程仓库

    在终端运行命令

    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 addgit commitgit push命令将文件推送到 CODING 远程仓库。

Git 文件状态介绍

  • 已修改(modified) ———— 表示修改了文件,但还没保存到数据库中
  • 已暂存(staged) ———— 表示对一个已修改文件的当前版本做了追踪,使之包含在下次提交的快照中
  • 已提交(committed)———— 表示数据已经安全的保存在本地数据库中

初次克隆某个仓库时,工作目录中的所有文件都属于已跟踪文件,且状态为未修改。 在编辑过某些文件之后,Git 将这些文件标为已修改。我们逐步把这些修改过的文件放到暂存区域,直到最后一次性提交所有这些暂存起来的文件,如此重复。使用 Git 时的文件状态变化周期如图所示。

图片

上一篇Git 仓库管理
最近更新
感谢反馈有用
感谢反馈没用

在阅读中是否遇到以下问题?

您希望我们如何改进?