文档章节

git 常用命令

半张一块
 半张一块
发布于 2016/09/30 20:58
字数 1097
阅读 50
收藏 4
点赞 0
评论 0
Git 常用命令

git init here            -- 创建本地仓库(repository),将会在文件夹下创建一个 .git 文件夹,.git 文件夹里存储了所有的版本信息、标记等内容

git remote add origin git@github.com:winter1991/helloworld.git        
                         -- 把本地仓库和远程仓库关联起来。如果不执行这个命令的话,每次 push 的时候都需要指定远程服务器的地址

git add                  -- 从本地仓库增删,结果将会保存到本机的缓存里面
git rm

git commit -m "注释"     -- 提交,把本机缓存中的内容提交到本机的 HEAD 里面

git push origin master   -- 把本地的 commit(提交) push 到远程服务器上, origin 也就是之前 git remote add origin 那个命令里面的 origin,origin 替代了服务器仓库地址:git push git@github.com:winter1991/helloworld.git master
git pull origin master   -- 从远程服务器 pull 新的改动

git status               -- 查看状态
git add -A               -- 提交全部修改


1. git 配置:
git config --global user.name "xxx"      -- 配置用户名,上传本地 repository 到服务器上的时候,在 Github 上会显示这里配置的上传者信息
git config --global user.email "xxx"     -- 配置邮箱
git config --list        查看配置列表

长期存储密码:

git config --global credential.helper store

配置 sshkey : 上传代码时使用这个 sshkey 来确认是否有上传权限
    1. 创建本地 ssh : ssh-keygen -t rsa -C "Github 的注册邮箱"
    2. 在 Github 中添加这个 sshkey : 
        复制  C:\Documents and Settings\Administrator\.ssh\id_rsa.pub 文件中的内容;
        登录 Github --> Account Setting  --> SSH-KEY --> Add SSH-KEY --> 粘贴id_rsa.pub中的内容;
    3. 验证: ssh -T git@github.com
        出现 Hi xxx! You've successfully authenticated, but GitHub does not provide shell access. 说明配置成功,可以连接上 Github
        

2. 建立仓库 repository :
git init here       -- 创建本地仓库
git remote add origin git@github.com:用户名/仓库名.git
                    -- 把本地仓库和远程仓库关联起来, 如果不执行这个命令的话,每次 push 的时候都需要指定远程服务器的地址

                    
3. 从远程仓库中下载新的改动:
git pull origin master


4. 提交本地修改到远程仓库中:
git add
git add -A      -- 将改动添加到本地仓库中
git rm xxx      -- 从本地仓库中删除指定文件
git rm -r xxx   -- 从本地仓库中删除指定文件夹

git commit -m "注释"    -- 把本机缓存中的内容提交到本机的 HEAD 里面

git push origin master      -- 把本地的 commit push 到远程仓库中


5. 使用 .gitignore 文件忽略指定的内容:
    1. 在本地仓库根目录创建 .gitignore 文件。Win7 下不能直接创建,可以创建 ".gitignore." 文件,后面的标点自动被忽略;
    2. 过滤文件和文件夹: [Tt]emp/ 过滤 Temp\temp 文件夹; *.suo 过滤 .suo 文件;
    3. 不过滤文件和文件夹: !*.c

Git鼓励大量使用分支:

查看分支:git branch

创建分支:git branch <name>

切换分支:git checkout <name>

创建+切换分支:git checkout -b <name>

合并某分支到当前分支:git merge <name>

删除分支:git branch -d <name>


/***************************************/
获取远端所有分支git fetch
git branch命令的-r选项,可以用来查看远程分支,-a选项查看所有分支。

检出分支
$ git checkout -b newBrach origin/master

此外,也可以使用git merge命令或者git rebase命令,在本地分支上合并远程分支。

git问题记录--如何从从detached HEAD状态解救出来
git branch temp fef4501

git暂存不提交文件
$git stash
$do some work
$git stash pop

进阶:
git stash save "work in progress for foo feature"
当你多次使用’git stash’命令后,你的栈里将充满了未提交的代码,这时候你会对将哪个版本应用回来有些困惑,
’git stash list’ 命令可以将当前的Git栈信息打印出来,你只需要将找到对应的版本号,
例如使用’git stash apply stash@{1}’就可以将你指定版本号为stash@{1}的工作取出来,当你将所有的栈都应用回来的时候,可以使用’git stash clear’来将栈清空。
删除不用的栈
git stash drop stash@{1}

$ git reset --hard HEAD^         回退到上个版本
$ git reset --hard HEAD~3        回退到前3次提交之前,以此类推,回退到n次提交之前
$ git reset --hard commit_id     退到/进到 指定commit的sha码


强推到远程:

$ git push origin HEAD --force

 

© 著作权归作者所有

共有 人打赏支持
半张一块
粉丝 24
博文 53
码字总数 35527
作品 2
宁波
架构师

暂无文章

十大Intellij IDEA快捷键

Intellij IDEA中有很多快捷键让人爱不释手,stackoverflow上也有一些有趣的讨论。每个人都有自己的最爱,想排出个理想的榜单还真是困难。以前也整理过Intellij的快捷键,这次就按照我日常开发...

HJCui
15分钟前
0
0
word 使用mathtype 编写 数学公式

下载安装,这个链接命名。。。。 http://www.mathtype.cn/xiazai.html 安装之后会多出一个选项 使用内联方式插入图表 编写公式的界面 设置支持latex 语法 输入公式回车就可以看到结果...

阿豪boy
33分钟前
0
0
Promise

定义 Promise是异步编程的一种解决方案,所谓Promise就是一个容器,里面保存着某个未来才会结束的事件(通常是一个一步操作)的结果。 特点: 2.1 对象的状态不受外界影响,三种状态pending...

litCabbage
45分钟前
0
0
设计模式:适配器模式

说明:在不改变旧接口代码的前提下,为该接口新增其他接口的功能 适配器模式可以分为:类适配器模式、对象适配器模式、接口适配器模式 前两种模式下,我会以播放器为例。老版的播放器(Playe...

人觉非常君
45分钟前
0
0
使用VsCode搭建Java开发环境,创建springboot应用

1、在 Visual Studio Code 中打开扩展视图(Ctrl+Shift+X),输入关键词java、spring分别下载Java开发插件包和springboot插件包 2、配置参数 点击设置按钮,进入设置选项,配置用户设置 在用户...

qsyan
48分钟前
20
0
调教属于你的“贾维斯”(给自己挖了一个很大的坑)

今天玩一下现在很火的人工智能。 废话不多说,先来看几张图: 看出什么蹊跷了吗? 再来看一个视频: https://www.zhihu.com/video/1002567561061511168 (演示网址和代码见文末) 人工智能离...

crossin
54分钟前
1
0
ES10-检索入门

1.创建索引,准备数据 定义索引结构 DELETE telegraphPUT telegraph{ "mappings": { "msg":{ "properties": { "title":{ "type": "text", ...

贾峰uk
59分钟前
1
0
css 三角形

1.无边框三角形 条件:width,height设置为0,border-width设置一定的宽度,border-color保留一边有颜色其他三边设置透明 .triangle{ width:0px; height:0px; border-width:40...

爱喝水的小熊
今天
0
0
NPM依赖包版本号~和^和*的区别

~ 会匹配最近的小版本依赖包,比如~1.2.3会匹配所有1.2.x版本,但是不包括1.3.0 ^ 会匹配最新的大版本依赖包,比如^1.2.3会匹配所有1.x.x的包,包括1.3.0,但是不包括2.0.0 * 这意味着安装最...

fangPeng_
今天
0
0
第三章 spring-bean之SimpleAliasRegistry(2)

前言 AliasRegistry的实现类,嗯,嗯,嗯,一个很简单的实现。只有一个map。 源码解读 接口 AliasRegistry public interface AliasRegistry {void registerAlias(String name, String al...

鸟菜啊
今天
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部