git笔记

来天津工作以来一直使用svn管理项目,最近有一段时间没有用git命令,发现好多指令都记不得了, 又翻了下笔记,把git的一些指令总结下,防止自己忘了。

首先需要明白git是分布式提交, 先提交到本地然后复制到远程仓库。

常用的:

  1. init:新建一个Git管理项目。
  2. git add . 添加所有的修改,‘.’是通配符
    git add 文件名或者文件路径,添加指定的
  3. git reset 将所有git add 的撤销
  4. git commited 提交到本地仓库
  5. git revert 回滚到指定的commit的点。

状态和日志

  1. git statue 查看当前的状态,那些文件修改了,那些文件创建还没有add的。
  2. git log 查看commit历史

和暂存栈相关的

  1. git stash 将没有commit的部分文件放到暂存栈去,这样从服务器pull文件的时候不会有问题。
  2. git stash pop 是将暂存栈的东西拿回来
  3. git stash clear 将暂存栈中的东西清空,要慎用,这样你放在暂存中的修改都将丢失

分支相关

  1. 创建分支 git branch <分支名>
  2. 切换分支 git checkout <分支名>
    该语句和上一个语句可以和起来用一个语句表示:git checkout -b <分支名> 3. 分支合并
    比如,如果要将开发中的分支(develop),合并到稳定分支(master),
    首先切换的master分支:git checkout master。
    然后执行合并操作:git merge develop。
    如果有冲突,会提示你,调用git status查看冲突文件。
    解决冲突,然后调用git add或git rm将解决后的文件暂存。
    所有冲突解决后,git commit 提交更改。
  3. 删除分支
    执行git branch -d <分支名> 如果该分支没有合并到主分支会报错,可以用以下命令强制删除git branch -D <分支名>

比较文件差异

直接使用git diff 可以产看当前没有add 的内容修改
查看已经add 没有commit 的改动 使用 git diff –cached
git diff HEAD 是上面两条的合并
git diff 版本号码1 版本号码2 src : 比较两个版本号码的src 文件夹的差异

远程仓库互动

  1. git clone:从远程仓库得到整个项目的拷贝。
  2. pull:类似与SVN中的update动作,如果你之前clone得到某项目的一份拷贝,用pull可以更新到最新版本。相当于fetch + merge
  3. push:把本地仓库的这份拷贝push到服务器。

git全局配置

git config –global user.name “your name”
git config –global user.email “your_email@xx.com”

演示

伟大的码农说过: 会用git但是不会使用github的全是耍流氓。

我们就通过github演示下上面的用法:

  1. 到你的github 新建一个仓库,比如 HelloWorld
  2. 本地新建一个文件夹HelloWorld(和你的github里的仓库名称一致),进入该文件夹,右键git bash,初始化git,添加文件并提交commit
$ git init //初始化git,创建.git文件夹
$ git add README.md //建立一个待提交的文件README.md
$ echo "hello world!" >> README.md  //文件里写点东西,问候下美好的世界
$ git commit . -m "first commit" //提交文件,.是当前目录,就是提交所有文件
  1. 上传
$ git remote add origin https://github.com/yourName/yourRepo.git
$ git push -u origin master //可能需要输入用户名密码之类哦

origin可以是任意名字哦,是你远程仓库名,当然你可以添加多个哦,push的时候指定一个就可以。后面的yourName和yourRepo表示你再github的用户名和刚才新建的仓库,加完之后进入.git文件夹,打开config文件,这里会多出一个remote “origin”内容,这就是刚才添加的远程地址,也可以直接修改config来配置远程地址。

Github也有客户端(mac、windows),用客户端提交更加方便.基本上稍微有点电脑常识和git常识的就能操作。

更多精彩请关注微信公众账号likeDev

时间: 2024-10-31 04:54:10

git笔记的相关文章

git笔记:通过给grunt-inline打tag看tag操作

晚上review了下grunt-inline的issues,看到有个兄弟pull request,修正了0.3.0版本的一个bug.于是就merge了下,然后发布了0.3.1版本(这里). npm publish后,突然想到一个问题,发布了这么多个版本了,但好像都没有打过tag,这个不利于版本回溯以及bug trace.svn版本管理里有tag的概念,git里八九不离十也有,虽然还没用过.就简单百度了下,打完tag后顺便做下笔记: 查看tag git tag 比如我在grunt-inline的项

java相关-eclipse向git 提交代码时 找不到自己的新增文件 怎么解决??

问题描述 eclipse向git 提交代码时 找不到自己的新增文件 怎么解决?? eclipse向git 提交代码时 找不到自己的新增文件 怎么解决?? 解决方案 git笔记之解决eclipse不能提交jar等文件的问题git 提交不了代码文件eclipse 提交代码到 git 解决方案二: 你git push成功了没.确实提交了对应的commit 解决方案三: 问题解决了就分享下,解决的办法,然后关闭问题吧

Docker+Jenkins+GIT+Tomcat实战持续化集成

Docker基础教程可参考:容器Docker详解Jenkins基础知识可参考:jenkins笔记(1)Git基础知识可参考:GIT笔记文件脚本内容参考:junsansi,可以根据实际项目具体修改脚本. 一.概要 开发将源码上传到github仓库,通过jenkins持续集成引擎结合git工具,将源码拉取到jenkins服务器,通过工具maven在本地讲源码编译打包成war包,在ssh到Docker宿主机,通过执行脚本生成制作自定义的Dockerfile,最终执行生成images,并启动contai

ubuntu搭建svn、git遇到的问题及解决办法

不错的git笔记博客: http://www.cnblogs.com/wanqieddy/category/406859.html http://blog.csdn.net/zxncvb/article/details/22153019 Git学习教程(六)Git日志   http://fsjoy.blog.51cto.com/318484/245261/ 图解git http://my.oschina.net/xdev/blog/114383   Git详解之三:Git分支 http://bl

JS常用函数和常用技巧小结_javascript技巧

学习和工作的过程中总结的干货,包括常用函数.常用js技巧.常用正则表达式.git笔记等.为刚接触前端的童鞋们提供一个简单的查询的途径,也以此来缅怀我的前端学习之路. Ajax请求 jquery ajax函数 我自己封装了一个ajax的函数,代码如下: var Ajax = function(url, type success, error) { $.ajax({ url: url, type: type, dataType: 'json', timeout: 10000, success: fu

jenkins自动发布java代码

继jenkins笔记(1)进行实战java代码发布,此利用github私有仓库拉去,jenkins利用maven编译源码后讲包发布致web服务器. 一.git私有仓库创建 可参考GIT笔记中远程仓库搭建部分,此处java源码使用zrlog,将源码pull到github上,将jenkins公钥配置到github上,即可下一波. 二.web服务器tomcat配置 在需要将代码发布的web服务器上需要配置tomcat的manager页面. yum install java-1.8.0-openjdk.

git的学习笔记整理

Git学习较好的网址:http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/001373962845513aefd77a99f4145f0a2c7a7ca057e7570000 开源中国的git站点:http://git.oschina.NET/oschina/git-osc/wikis/Home   msysgit是Windows版的Git,从http://msysgit.githu

Git &amp; Github 一页简明笔记(转)main

由于小组工程需要使用git&github的版本控制来协作,但我对其使用并不熟悉,特此写篇一页的笔记放在手边,备随时查阅. 使用方法:常用命令供随时查阅,其余内容供新手了解.   0. 常用命令一览 # 配置仓库命令(项目名:play,项目发起者的名字:icedream61,URL=get@github.com:icedream61/play.git) git clone URL # 第一次克隆远程仓库,并关联:远程仓库 -> 本地仓库 git remote add origin URL #

Git 学习笔记

  Git/'ɡɪt/,  Linus的第二个伟大作品.Git这个词有点儿意思,Linus自嘲说 "I'm an egotistical bastard,  and I name all my projects after myself. First Linux, now Git. "  感叹我生不逢时,错过了版本控制的"史前黑暗"时代,刚刚接触版本控制,Linus就站在前边,笑嘻嘻的说:"版本控制? 什么是版本控制 .. ".真希望Linus身