GitHub使用方法入门基础(3)

你现在为commit做好了准备,你可以使用 git diff 命令再加上 --cached 参数,看看缓存区中哪些文件被修改了。

[root@linuxidc project]# git diff --cached

如果没有--cached参数,git diff 会显示当前你所有已做的但没有加入到索引里的修改。

如果你要做进一步的修改, 那就继续做, 做完后就把新修改的文件加入到缓存区中。

当所有新建,修改的文件都被添加到了缓存区,我们就要使用git commit提交到本地仓库:

[root@linuxidc project]# git commit -m "add 3 files" [master(根提交) bbb9a52] add 3 files 3 files changed, 3 insertions(+) create mode 100644 file1 create mode 100644 file2 create mode 100644 file3

需要使用-m添加本次修改的注释,完成后就会记录一个新的项目版本。

除了用git add命令,我们还可以用下面的命令将所有没有加到缓存区的修改也一起提交,但-a命令不会添加新建的文件。

$ git commit -a -m "add 3 files"

再次输入git status查看状态,会发现当前的代码库已经没有待提交的文件了,缓存区已经被清空。

至此,我们完成了第一次代码提交,这次提交的代码中我们创建了三个新文件。需要注意的是如果是修改文件,也需要使用git add命令添加到缓存区才可以提交。如果是删除文件,则直接使用git rm命令删除后会自动将已删除文件的信息添加到缓存区,git commit提交后就会将本地仓库中的对应文件删除。

为你的项目添加一个新的远程仓库

本地仓库是创建完成了,现在需要与远程的仓库进行链接。

[root@linuxidc project]# git remote [root@linuxidc project]# git remote add origin git@github.com:linuxidc/project.git [root@linuxidc project]# git remote -v origin git@github.com:linuxidc/project.git (fetch) origin git@github.com:linuxidc/project.git (push) 推送到远程仓库

这个时候如果本地的仓库连接到了远程Git服务器,可以使用下面的命令将本地仓库同步到远端服务器:(注意,需要与远程仓库连接)

[root@linuxidc project]# git push -u origin master Warning: Permanently added the RSA host key for IP address '192.30.255.113' to the list of known hosts. Counting objects: 14, done. Delta compression using up to 4 threads. Compressing objects: 100% (10/10), done. Writing objects: 100% (14/14), 1.16 KiB | 0 bytes/s, done. Total 14 (delta 2), reused 0 (delta 0) remote: Resolving deltas: 100% (2/2), done. To git@github.com:linuxidc/project.git * [new branch] master -> master 分支 master 设置为跟踪来自 origin 的远程分支 master。

上面使用git push时带上了-u参数,是将本地的master分支推送到origin主机,同时指定origin为默认主机,后面就可以不加任何参数使用git push了。

从远端仓库下载新分支与数据

git fetch会访问远程仓库,从中拉取所有你还没有的数据。 执行完成后,你将会拥有那个远程仓库中所有分支的引用,可以随时合并或查看。

[root@linuxidc project]# git remote -v origin git@github.com:linuxidc/project.git (fetch) origin git@github.com:linuxidc/project.git (push) [root@linuxidc project]# git fetch origin remote: Counting objects: 3, done. remote: Compressing objects: 100% (2/2), done. remote: Total 3 (delta 0), reused 0 (delta 0), pack-reused 0 Unpacking objects: 100% (3/3), done. 来自 github.com:linuxidc/project 6c3b072..4d38d99 master -> origin/master

git fetch origin会抓取从你上次克隆以来别人上传到此远程仓库中的所有更新(或是上次 fetch 以来别人提交的更新)。有一点很重要,需要记住,fetch 命令只是将远端的数据拉到本地仓库,并不自动合并到当前工作分支,只有当你确实准备好了,才能手工合并。

查看分支

git branch命令的-r选项,可以用来查看远程分支,-a选项查看所有分支。

[root@linuxidc project]# git branch -r origin/master [root@linuxidc project]# git branch -a * master remotes/origin/master

上面命令表示,本地主机的当前分支是master,远程分支是origin/master。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/13880.html