git学习一

1. git使用帮助查看
man git-commit
man git-pull
man git-merge
 
2. 任何人在使用git之前,需要提交简单的个人信息,以便git区分不同的提交者。
# git config -global user.name "your name"
# git config -global user.email yourname@example.com
 
3. 开启一名为myproject的项目,基本操作如下:
# cd myproject
# git init
# git add .
# git commit //这个步骤会自动进入编辑状态,要求填写有关本次提交的“开发信息”
至此,一个新项目也诞生了。
 
4. 如果改进了项目源代码,并且开发者认为需要加入到代码中去。
# git commit -a //这个步骤相当于 git add .; git commit
但是这样操作。无法对新增加的文件和文件夹加入进代码库。所以出现有新文件,还是用 git add .; git commit
 
5. 查看对源代码的修改。
# git diff // 这个命令只在git add之前使用有效,如果已经add后,那么输出为空。
# git status //这个命令在commit之前有效,查看各个文件的状态。
 
6. 查看项目开启到当前所有开发日志。
# git log //
 
7. 开启一个实验分支(experimental),如果实现分支成功,则合并到主分支(master),否则放弃实验。
# git branch experimental //创建一个试验分支。名为experimental
# git branch // 显示当前所有的分支,标记为星号的为当前所在分支。
# git checkout experimental // 转移到experimental分支。
如果分支开发成功后。。。。
# git commit -a //在分支改进完代码后,进行提交。
# git checkout master //转移到主分支
# git merge experimental //分支开发成功后,将分支整合到主分支
# git branch -d experimental //删除分支。
如果分支开发失败。。。
# git checkout master
# git branch -D experimental //放弃并删除分支
 
8. 使用图形化分支信息
 # gitk
 
9. 当合作人bob希望改进我的项目时,则:
bob$ git clone /home/myproject myrepo //此命令用于复制我的项目到bob的myrepo目录下。
如果直接融合到我项目:
$ cd myproject
$ git pull /home/bob/myrepo //pull命令是从远端git代码仓取出(git-fetch)修改的代码,然后合并(get-merge)到我的项目中去。“git pull .”命令和“git merge”命令功能是一样的。
如果不直接融合到我项目:
$ cd myproject
$ git fetch /home/bob/myrepo master:bobworks //将bob的代码放到bobworks分支中。
$ git whatchanged -p master..bobworks //查看所做的修改
$ git chechout master //转移到主分支
$ git pull . bobworks //如果满意,则合并到我的项目中去
$ git branch -D bobworks //如果不满意,则直接删除
对于,bob如果继续开发,他需要先同步一下我这几天的工作成果,只要在其当初clone的myrepo目录下执行git pull即可
$ git pull //不用加任何参数,因为当初clone的时候,git已经记住了我的工作目录,它会直接找到我的目录来取。
原文地址:https://www.cnblogs.com/sinaxyz/p/2989790.html