国内最全IT社区平台 联系我们 | 收藏本站
华晨云阿里云优惠2
您当前位置:首页 > php开源 > 综合技术 > Git使用教程:取代码及修改全局设置

Git使用教程:取代码及修改全局设置

来源:程序员人生   发布时间:2014-05-29 11:56:30 阅读次数:3107次

取代码及修改全局设置

设置用户名与邮箱

git config --global user.name "My Name"
git config --global user.email my@email.com

从已有的git库中提取代码

git clone git@server:app.git myrepo

每次更改代码的操作

更新本地代码到最新版本(需要merge才能合到本地代码中)

git fetch

合并更新后的代码到本地

git merge

更新代码方式的另一种方法(git pull是git fetch和git merge命令的一个组合)

git pull

修改代码后,查看已修改的内容

git diff --cached

将新增加文件加入到git中

git add file1 file2 file3

从git中删除文件

git rm file1
git rm -r dir1

提交修改

git commit -m 'this is memo'

如果想省掉提交之前的 git add 命令,可以直接用

git commit -a -m 'this is memo'

commit和commit -a的区别, commit -a相当于:

  • 第一步:自动地add所有改动的代码,使得所有的开发代码都列于index file中
  • 第二步:自动地删除那些在index file中但不在工作树中的文件
  • 第三步:执行commit命令来提交

提交所有修改到远程服务器,这样,其它团队成员才能更新到这些修改

git push

其它常用命令

显示commit日志

git log

不仅显示commit日志,而且同时显示每次commit的代码改变。

git log -p

回滚代码:

git revert HEAD

你也可以revert更早的commit,例如:

git revert HEAD^git revert HEAD^

将branchname分支合并到当前分支中。(如果合并发生冲突,需要自己解决冲突)

git merge branchname

解决冲突

当merge命令自身无法解决冲突的时候,它会将工作树置于一种特殊的状态,并且给用户提供冲突信息,以期用户可以自己解决这些问题。当然在这个时候,未发生冲突的代码已经被git merge登记在了index file里了。如果你这个时候使用git diff,显示出来的只是发生冲突的代码信息。

在你解决了冲突之前,发生冲突的文件会一直在index file中被标记出来。这个时候,如果你使用git commit提交的话,git会提示:filename.txt needs merge

在发生冲突的时候,如果你使用git status命令,那么会显示出发生冲突的具体信息。

在你解决了冲突之后,你可以使用如下步骤来提交:

第一步(如果需要增加文件):

git add file1

第二步:

git commit

收藏、分享这篇文章!

Related posts:

  1. Git服务器安装 Git on Ubuntu Server 安装Git-Core: sudo apt-get update # 可选步骤…
  2. Git详解(一) 我用git最开始是在github,每次提交代码以后,右上角的部分就会显示这些信息,类似于下面的: commit  fa6f27b7de063c2f301b0e7148b5bd5e813faa98 tree       5e7a19c158b89fbc52a078771a833ee839727404 parent   76f31606376180ca88efa12be341dbb14fb06fdf 咋一看,这40位的乱码挺吓人的,但是你了解它的作用就不会被吓到了。 这是object name,是作为你每次提交的信息标识。这是用SHA1加密hash函数根据你的对象的内容算出来的。Git的一些优点:…
  3. Git详解(二) Git中级用法: Ignoring files 项目里总会出现你不想跟踪的文件。当然这些文件你不对它们进行git add操作就行了,但是这样也很麻烦, 如果使用git add .命令和git commit -a命令呢?你能告诉git去忽略一些文件,我们只需要在我们工作目录顶级创建一个.gitignore文件就可以了。就像这样:…
  4. Satellite: a self-syncing distributed wiki 介绍 satellite is a self-syncing distributed wiki with file uploads…
本文地址:http://www.52blogger.com/archives/570 , 转载请保留.
生活不易,码农辛苦
如果您觉得本网站对您的学习有所帮助,可以手机扫描二维码进行捐赠
程序员人生
------分隔线----------------------------
分享到:
------分隔线----------------------------
关闭
程序员人生