首页 > 代码库 > Github 使用

Github 使用

创建repository________________________________________ 可以在Github上无限制使用public repository进行源代码管理,创建一个repository很简单,不多说了。 获取代码到本地________________________________________ 首先要安装Git,然后使用命令把代码从Github上拷贝到本地:git clone https://github.com// 如果是第一次使用,自己的repository还是空的,同样可以使用remote进行链接git remote add origin https://github.com/username/repository_name.git 提交更新到服务器________________________________________ 如果我们要新增或者更新一个文件,比如test.html。我们要先确保这个test.html已经存在,然后用git add 进行添加标记,表示这个文件已经改动或者这个文件是新增文件。git add test.html git commit -m "代码提交信息"如果没有commit,那么添加的文件只是放在一个暂存区。 commit后改动才算真正写到了本地,但是改动还没有上传的服务器上去。如果添加多个文件,可以用git add *因此,即使是commit了,新增的文件也还没有上传到Github上去。需要用push把改动上传到Github上去。 会提示你输入用户和密码git push origin master这个"master",是指分支的名字。默认情况下就只有"master"这个主分支。 "orgin"是在我们从Github上clone代码到本地的时候,默认的源的名字。可以理解为"orgin"就是我们当前正在工作的源代码。 上面的意思就是,把我们当前的代码("orgin")的改动推送到服务器上的"master"分支。 删除一个文件和添加一个文件的步骤类似。首先使用git rm删除一个文件,并且commit。注意,直接在目录下把文件删掉是没有用的,必须用git rm删除文件。git rm test.htmlgit commit -m "代码提交信息"然后在把改动push到服务端"git push origin master"。 从服务器获取更新________________________________________git status 是一个很有用的命令,用来查看本地repository的状态,它会显示文件的新增/修改/删除的状态。如果服务端有更新,git status也会有相应的提示。D:\Dev\Github\bid>git statusOn branch masterYour branch is behind ‘origin/master‘ by 1 commit, and can be fast-forwarded.(use "git pull" to update your local branch)nothing to commit, working directory clean上面的显示的意思就是,有一个更新还没有反应到我本地来,可能是别人往server上checkin了一点东西。 使用git pull命令拿这些更新到本地来。D:\Dev\Github\bid>git pullUpdating abf79f6..db7b6e3Fast-forwardroutes.js | 4 ++--1 file changed, 2 insertions(+), 2 deletions(-)如果服务端和本地文件都做了改动,使用git pull时就会提示冲突:D:\Dev\Github\bid>git pullremote: Counting objects: 5, done.remote: Compressing objects: 100% (3/3), done.remote: Total 3 (delta 2), reused 0 (delta 0)Unpacking objects: 100% (3/3), done.From https://github.com/*****/***db7b6e3..211ff7f master -> origin/masterUpdating db7b6e3..211ff7ferror: Your local changes to the following files would be overwritten by merge:routes.jsPlease, commit your changes or stash them before you can merge.Aborting这时候推荐手动检查一下文件的版本,到底需要哪个。有一个git mergetool可以帮助merge code。 使用git checkout可以丢弃掉本地的改动,然后使用git pull去拿server上的最新更新。比如,我想丢弃一个文件的所有改动:git checkout routes.js然后再使用git pull,就可以拿到server上的版本的代码了。