git 使用经验

1, 切换分支:

git  checkout  《分支名字》: git checkout clhandle

2,查看有哪些分支:

git  branch ;

查看远端有哪些分支:

git branch -r

3,拉取远端分支:(本地没有该分支的时候???)

git fetch origin cl_handle: clhandle;

注意: fetch  将远端拉到本地 但是 不合并;

origin 表示远端,

cl_handle 是远端的分支名

clhandle 如果本地没有这个分支 就会创建;

---------------------------------

git pull origin cl_handl  将远端的 cl_handle 分支 拉取到本地并合并;(本地的当前分支)

4, 撤消 修改(当内容还没有提交的时候  有效)

例如 git status 列出 以下文件被修改;

那么 : git  checkout 《文件名》 即可;

还支持通配符;

5,add:

1) git status:  to list all file status ;

2)git add *.cpp  to add all cpp file listed;

6,commit : for first established git , should after first commit, there would be a master branch can be seen;

git commit -m "this is a first commit"  //[提交的是暂存区里面的内容,也就是 Changes to be committed 中的文件 ]

git commit -a 除了将暂存区里的文件提交外,还提交 Changes but not updated 中的文件。

7,添加远程主机

git remote add origin [email protected]:/home/XXXXX.git

中间这个orgin 就是 添加的远程 主机名; 正如前面用到的;//[此时还不用输入密码]

8,push:

git push origin master:master :  远程主机名 +  本地分支名: 远程分支名(如果不存在该分支 则创建)

9,恢复:

git reset -soft :取消了commit  
git reset -mixed(默认) :取消了commit ,取消了add
git reset -hard :取消了commit ,取消了add,取消源文件修改

我使用了 git  reset 文件名 来回复之前错误的add 操作;

当代码被删除  并且被提交了; 但是并没有被更新到远端;

我使用了 git reset HEAD <file name > 来撤消当前的add 操作;

然后使用了 git checkout <file name > 这样被删除的代码就回来了;

10:关于远端设置

git remote -v:显示当前所有远程库的详细信息,显示格式为 远程库名字 url连接(类型)

2)修改已经保存的远端地址:

git remote rm origin 

git remote add origin [email protected]:Liutos/foobar.git

或者尝试 使用

11, git fetch origin

自从mac 上在远程仓库上创建了新的分支,在unbuntu 上怎么也找不到;(git branch -r ); 原因:git没有中心服务器, 所有的命令都在本地执行; Origin 是远端名称;

这样会将远端的分支信息 同步到本地 , 这样就可以拉去远程其他分支了;

12: 新建一个本地分支

git branch <新分支名字>

13,git 查看 某一个 文件的 修改记录

git log -p filename

14: git 停止跟踪 文件

git rm --cached readme.txt  参数: --cached: 不删除 本地文件

git rm -n readme.txt  查看某文件是否被跟踪

15: 代码合并:当远端代码 有更新  , 同时本地代码也有更新; 有冲突的时候 直接push  和 push 都不行了;

1)先 fetch :  例如 git fetch clpc master  : 拉取 远端 clpc 的master的分支提交信息[ 不知道是否必要,但是我执行了这一步]

2)再merge: 例如:git merge clpc/master: 将远端的更新直接 合并到当前的分支;

疑问:

1) 为什么在使用git pull 拉取最新代码后, 但是 却没有发现 代码修改,查看 文件 log 时候  发现了 更新日志;

原因: 本地文件在合并前  有修改,并且已经提交, 因此没有merge  进来;

解决办法:

需要手动merge 远程分支 到本地; 然后提交merge 以后 才能使用;

git merge clpc/master master


时间: 04-20

git 使用经验的相关文章

Git详解之三 Git分支

相关文档 — 更多 Git 基础培训.ppt GIT 使用经验.ppt GIT 介绍.pptx GIT 分支管理是一门艺术.docx Eclipse上GIT插件EGIT使用手册.docx git/github学习笔记.doc git 版本控制系统.docx Git开发管理之道.pdf Git内部培训资料.pptx Git权威指南-第5篇-第32章-Gerrit.pdf Gitolite 构建 Git 服务器.pdf 版本控制之道 - 使用Git.pdf Git使用指南(中文).pdf Git-C

指导思想

告诉我,我可能转眼就忘:较我,我会牢记在心:参与其中,我会心领神会.--本杰明·富兰克林 不论读多少书,学习知识的最佳方式是将其应用于实践. 比如:阅读了<git使用经验(已读70%)>,仅需要阅读其中的一部分知识,其他的部分需要结合实践:因为是工作的需要,不能将大部分时间都用在学习上,而忽略了业务水平的提升. 教训:把工作做得尽善尽美,就得学会找到所有可能失败的原因:如果规避了大部分可能失败的行为和局面,那么你成功的概率将大大增加.比如在工作中,学会去在"事前"验证可能的

Git前世今生-版本控制软件的发展

版本控制软件发展至今已有40多年的历史. 最早的版本控制软件是1972年由Marc J. Rochkind开发的SCCS (Source Code Control System),通过将不同版本下的文件单独保存的形式完成,将同一版本的所有文件打包保存.SCCS使用了长达10年的时间,直到1982年RCS的问世. 1982年,Walter F.Tichy 发布了RCS (Revision Control System),提供了较SCCS更多的功能,并作为GNU项目的一部分. 1986年创建的CVS

Git详解之四 服务器上的Git

来自:http://www.open-open.com/lib/view/open1328069988843.html 服务器上的 Git 到目前为止,你应该已经学会了使用 Git 来完成日常工作.然而,如果想与他人合作,还需要一个远程的 Git 仓库.尽管技术上可以从个人的仓库里推送和拉取修改内容,但我们不鼓励这样做,因为一不留心就很容易弄混其他人的进度.另外,你也一定希望合作者们即使在 自己不开机的时候也能从仓库获取数据 — 拥有一个更稳定的公共仓库十分有用.因此,更好的合作方式是建立一个大

前端学习——JQuery Ajax使用经验

0.前言 在项目推进过程中经常使用Ajax,通过Jquery提供的函数可以非常方便的使用Ajax,但是在实际使用中也遇到一些问题,例如如何防止浏览器使用缓存,如何使用同步方式等.通过博文整理总结希望自身有所提高. 在这里通过一个加法例子说明问题.为了突出ajax,前端网页和后端PHP程序尽可能的简单. [前端]--add.html 图1 add页面 [后端]--add.php <?php // 返回JSON格式 header('Content-Type:application/json;char

服务器上的Git

前面的话 如果想与他人使用,除了使用Git来完成日常工作之外,还需要一个远程的Git仓库.尽管从技术上可以从个人的仓库里推送和拉取修改内容,但并不鼓励这样做,因为一不留心就很容易弄混其他人的进度.因此,更好的合作方式是建立一个大家都可以访问的共享仓库,从那里推送和拉取数据.我们将这个仓库称为"Git服务器":代理一个Git仓库只需要花费很少的资源,几乎从不需要整个服务器来支持它的运行 远程仓库通常只是一个裸仓库(bare repository)——即一个没有当前工作目录的仓库.因为该仓

【实习记】2014-08-25版本管理svn与git学习对比+看书UNIX网络编程

git也算中等熟练了,对其哲学也明白.但是svn一直半桶水. 上网搜索了几篇svn的好文,做一下总结: <svn分支开发与主干合并(branch & merge) >http://blog.csdn.net/bbirdsky/article/details/24620155 TortoiseSVN图形操作,适合初学者. <SVN中Branch的创建与合并>http://www.cnblogs.com/huang0925/p/3254243.html命令行的svn,适合真正要

Windows Git+TortoiseGit简易使用教程

转载自 http://blog.csdn.net/jarelzhou/article/details/8256139 官方教程:http://tortoisegit.org/docs/tortoisegit/(英文版) 为什么选择Git 效率 很多人有一种习惯吧,什么软件都要最新的,最好的.其实吧,软件就是工具,生产力工具,为的是提高我们的生产力.如果现有的工具已经可以满足生产力要求了,就没有必要换了.生产效率高低应当是选择工具的第一位. 历史 开源世界的版本控制系统,经历了这么几代: 第一代,

git 把本地创建的项目放到github上

很早之前就注册了Github,但对其使用一直懵懵懂懂,很不熟练.直到昨天做完百度前端技术学院的task,想把代码托管到Github上的时候发现自己对于Git的操作是如此之愚钝,所以今天决定把Git好好学习一遍,好让自己以后能更好地使用Github,主要还是通过Git教程 - 廖雪峰的官方网站来学习.简要步骤可以直接看最后的总结. Git的安装就不说了. 第一步:我们需要先创建一个本地的版本库(其实也就是一个文件夹). 你可以直接右击新建文件夹,也可以右击打开Git bash命令行窗口通过命令来创