title: git常用命令
date: 2015-10-27 10:28:25
categories:

  • git
    tags:
  • git

添加 SSH 公钥

Windows 平台中,可以使用 Git Bash 工具

进入 SSH 目录

mkdir ~/.ssh
cd  ~/.ssh

生成 SSH 密钥

ssh-keygen -t rsa -C "yangzhi@zhim.net.cn"

Enter passphrase ( empty for no passphrase ) : 时,可以直接按两次回车键输入一个空的 passphrase;也可以选择输入一个 passphrase 口令。(空)
SSH 目录下生成私钥 id_rsa 和公钥 id_rsa.pub 这两个文件。

获取SSH公钥信息

查看生成的公钥信息
cat id_rsa.pub

添加 SSH 公钥到 GitCafe

打开 GitCafe 网站,进入 账户设置 –> SSH 公钥管理 设置项,点击 添加新公钥 按钮。
名称 为公司电脑/家里电脑等随意名称。
公钥 为id_rsa.pub里面的内容。

测试 GitCafe SSH 连接

完成上面的操作后,可以通过下面的命令来测试一下是否可以连接 GitCafe 服务器。
ssh -T git@gitcafe.com
如果你操作的电脑是第一次与 GitCafe 建立连接,会出现以下警告,
The authenticity of host 'gitcafe.com (50.116.2.223)' can't be established.

#RSA key fingerprint is 84:9e:c9:8e:7f:36:28:08:7e:13:bf:43:12:74:11:4e.
#Are you sure you want to continue connecting (yes/no)?

输入 yes 后回车。此时,如果你在生成 SSH 密钥时设置了 passphrase 口令,会提示你输入口令,输入后回车即可。
最后,如果你看到以下信息,说明连接成功。
Hi USERNAME! You've successfully authenticated, but GitCafe does not provide shell access.

git常用命令

全局设置:

git config --global user.name 'zhim'
git config --global user.email 'yangzhi@zhim.net.cn'

接下来本地:

您可以在本地创建新的 Git 仓库

#gitcafe.net上创建项目名称 gitabc
mkdir gitabc
cd gitabc
git init
git remote add origin 'git@git.oschina.net:xxxx/gitabc.git'
git pull origin master
git add -A #添加所有文件
git commit -m 'first commit'
git push origin master

添加 GitCafe 远程仓库(origin(起源) 是默认的远程版本库名称)
git remote add origin 'git@gitcafe.com:xxxx/gitabc.git'
git remote add origin 'git@git.oschina.net:xxxx/gitabc.git'
删除 GitCafe 远程仓库 (git remote rm origin)
将master分支更新的本地 git pull origin master

bash下代码提交过程

  • 提交代码到本地库
    代码修改后,直接git add -A,git commit -m "ss",提交代码到本地库;

  • 提交代码到远程库
    1) 先更新代码到本地,直接git pull origin master;
    2) git status,查看状态,若无冲突,git push origin master,若有冲突,请看3);
    3) 有冲突,git diff,查看冲突文件,手动修改文件,然后git add -A,git commit -m "ss",git push origin master

分支相关

提交到远程库的master分支 git push -u origin master

创建分支: $ git branch gitcafe-pages(拷贝当前分支内容到新的分支)
切换分支: $ git checkout gitcafe-pages
创建并切换分支: $ git checkout -b gitcafe-pages
提交代码到gitcafe-pages分支
git push origin gitcafe-pages

删除分支: $ git branch -d mybranch
强制删除分支: $ git branch -D mybranch
列出所有分支: $ git branch

合并分支:$ git merge branchname
这个命令把分支"branchname"合并到了当前分支里面。

git 放弃本地修改 强制更新

git fetch --all
git reset --hard origin/master
#git fetch 只是下载远程的库的内容,不做任何的合并 git reset 把HEAD指向刚刚下载的最新的版本

查看工作区的状态

要随时掌握工作区的状态,使用git status命令。
如果git status告诉你有文件被修改过,用git diff可以查看修改内容。

eclipse插件使用

代码提交过程:先提交到本地,然后远程更新到本地,最后提交到远程。

命令说明

  • 更新
    Fetch from upstream 远程服务器 --> 本地服务器
    Pull 远程服务器 --> 本地服务器 --> 本地代码

  • 提交
    commit but not push 修改代码 --> 本地代码
    commit and push 修改代码 --> 本地代码 --> 远程代码

eclipse下代码提交过程

  • 提交代码到本地库
    代码修改后,直接COMMIT BUT NOT PUSH,提交代码到本地库(会出现向上箭头);

  • 提交代码到远程库
    1) 同步代码
    2) 同步后,若无冲突,直接PULL(图标),然后右键项目PUSH(图标);
    3) 同步后,若有冲突,右键项目,直接PULL(图标)代码远程代码到本地(本地代码必须先commit),在本地修改冲突代码,然后右键项目 add to git index ,PUSH(图标)。

相关资源

[1] [猴子都能懂得git入门](http://backlogtool.com/git-guide/cn/intro/intro1_1.html)
[2] [git.oschina.net手机端下载](http://git.oschina.net/appclient)
[3] 权威Git书籍ProGit(中文版),新手老鸟均适合
[4] [廖雪峰的官方网站](http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000)

testMarkDown的更多相关文章

  1. SimpleMDE编辑器 + 提取HTML + 美化输出

    开发步骤: 1. 安装和引入(npm或者bower都可以) $ bower install simplemde --save //css - debug目录下为开发版本 <link rel=&q ...

随机推荐

  1. JavaWeb 学习0010-今日问题 2016-12-3

    2016-12-3 1. 今天要做的第一个问题就是,怎么把网页变得好看点: addStudent/listStudent页面都有改动 其中 list页面还有了<c:if 的语句这是还没练习过得知 ...

  2. SpringMVC对异常进行全局处理,并区分对待ajax和普通请求

    异常信息应统一进行处理. 程序员开发过程中,应尽量少用try..catch.避免因为catch造成的业务歧义.而在web开发中,普通的页面提交动作,和ajax提交动作,处理方式不一样,因为跳转后直接显 ...

  3. asp.net mvc 自定义身份验证 2

    控制成员角色 [Authorize(Rroles="Administator,SuperAdmin")] public class StoreManagerController:C ...

  4. hadoop2.6源码导入mvn出错Missing tools.jar问题解决方案

    1.定义JAVA_HOME:      JAVA_HOME=$(/usr/libexec/java_home) 2.拷贝文件      cd $JAVA_HOME      mkdir Classes ...

  5. lphp输出控制output controll(header, ob_xxx)

    关于php的output controll参考文档: http://gywbd.github.io/posts/2015/1/php-output-buffer-in-deep.html http:/ ...

  6. 学习总结relative和absolute

    之前对于absolute和relative不了解,现在整理 先设置relative再设置absolute 因为父不设置relative 那么子会向上寻找祖先元素,看是否设置relative.如果有则相 ...

  7. 下拉框数据的动态选择,类似级联ajax刷新数据

    简单的两个下拉列表,第二个中的数据与第一个下拉框相关: --------------------var selected = $(this).children('option:selected').v ...

  8. CentOS系统下安装配置ftp服务

    安装配置步骤: rpm -ivh /opt/bak/vsftpd-2.2.2-11.el6.x86_64.rpm --本地安装vsftpd ll /etc/vsftpd/  --查看vsftpd的配置 ...

  9. kiosk-mode,免密码登陆, sideload Windows Store apps 等

    MVVM带来的性能问题及其解决方案  MVVM 和语言性能提示:https://msdn.microsoft.com/zh-cn/library/windows/apps/xaml/mt628050. ...

  10. js常用的地址栏参数获取

    用JS获取地址栏参数的方法(超级简单) 方法一:采用正则表达式获取地址栏参数:( 强烈推荐,既实用又方便!) function GetQueryString(name) {      var reg ...