git的使用(包括创建远程仓库到上传代码到git的详细步骤以及git的一些常用命令)

A创建远程仓库到上传代码到git

1)登陆或这注册git账号

https://github.com

2)创建远程仓库

3)打开终端输入命令(前提,本地已经安装了Git Bash;这个安装window版git时会自动安装)

cd到你的本地项目根目录下,执行如下git命令

git init   初始化,本地目录为git仓库

git add . 增加仓库内容为要上传(注意git add . 后边带个点,这是将当前仓库所有文件都增加;也可以git add filename 单个增加文件)

git commit -m "注释语句"     这个提交要拉加的内容

git remote add origin https://自己的仓库url地址    关联本地和远程仓库  git remote add "别名" https://github.com/xxxxx/Demo.git  ;之后操作可以直接写这个别名

git pull origin master   从远程仓库上拉取项目到本地

git push -u origin master 推送本地仓库到远远程

如果如下报错

failed to push some refs to 'https://github.com/mantou811/demo.git'

hint: Updates were rejected because the remote contains work that you do

hint: not have locally. This is usually caused by another repository pushing

hint: to the same ref. You may want to first integrate the remote changes

hint: (e.g., 'git pull ...') before pushing again.

hint: See the 'Note about fast-forwards' in 'git push --help' for details.

解决方法有

1.使用强制push的方法:(首次上传代码可用这个方法)

$ git push -u origin master -f

这样会使远程修改丢失,一般是不可取的,尤其是多人协作开发的时候。

2.push前先将远程repository修改pull下来

$ git pull origin master

$ git push -u origin master

3.若不想merge远程和本地修改,可以先创建新的分支:

$ git branch [name]

然后push

$ git push -u origin [name]

B,Github常用的命令:

  • git branch 查看本地所有分支
  • git status 查看当前状态
  • git commit 提交
  • git branch -a 查看所有的分支
  • git branch -r 查看远程所有分支
  • git commit -am "init" 提交并且加注释
  • git remote add origin git@192.168.1.119:ndshowgit
  • push origin master 将文件给推到服务器上
  • git remote show origin 显示远程库origin里的资源
  • git push origin master:develop
  • git push origin master:hb-dev 将本地库与服务器上的库进行关联
  • git checkout --track origin/dev 切换到远程dev分支
  • git branch -D master develop 删除本地库develop
  • git checkout -b dev 建立一个新的本地分支dev
  • git merge origin/dev 将分支dev与当前分支进行合并
  • git checkout dev 切换到本地dev分支
  • git remote show 查看远程库
  • git add .git rm 文件名(包括路径) 从git中删除指定文件* git clone git://github.com/schacon/grit.git 从服务器上将代码给拉下来
  • git config --list 看所有用户
  • git ls-files 看已经被提交的
  • git rm [file name] 删除一个文件
  • git commit -a 提交当前repos的所有的改变
  • git add [file name] 添加一个文件到
  • git indexgit commit -v 当你用-v参数的时候可以看commit的差异
  • git commit -m "This is the message describing the commit" 添加commit信息
  • git commit -a -a是代表add,把所有的change加到git index里然后再commit
  • git commit -a -v 一般提交命令
  • git log 看你commit的日志
  • git diff 查看尚未暂存的更新
  • git rm a.a 移除文件(从暂存区和工作区中删除)
  • git rm --cached a.a 移除文件(只从暂存区中删除)
  • git commit -m "remove" 移除文件(从Git中删除)
  • git rm -f a.a 强行移除修改后文件(从暂存区和工作区中删除)
  • git diff --cached 或 $ git diff --staged 查看尚未提交的更新
  • git stash push 将文件给push到一个临时空间中
  • git stash pop 将文件从临时空间pop下来

git remote add origin git@github.com:username/Hello-World.git

git push origin master 将本地项目给提交到服务器中

git pull 本地与服务器端同步

git push (远程仓库名) (分支名) 将本地分支推送到服务器上去。

git push origin serverfix:awesomebranch

git fetch 相当于是从远程获取最新版本到本地,不会自动merge

git commit -a -m "log_message" (-a是提交所有改动,-m是加入log信息) 本地修改同步至服务器端 :

git branch branch_0.1 master 从主分支master创建branch_0.1分支

git branch -m branch_0.1 branch_1.0 将branch_0.1重命名为branch_1.0

git checkout branch_1.0/master 切换到branch_1.0/master分支du -hs

git branch 删除远程branchgit push origin :branch_remote_namegit branch -r -d branch_remote_name

 C,删除远程仓库(比如GitHub)的目录或文件

具体操作

  1. 拉取远程的Repo到本地(如果已经在本地,可以略过)
  2. $ git clone xxxxxx
  3. 在本地仓库删除文件
  4. $ git rm 我的文件
  5. 在本地仓库删除文件夹
  6. $ git rm -r 我的文件夹/
    此处-r表示递归所有子目录,如果你要删除的,是空的文件夹,此处可以不用带上-r。
  7. 提交代码
  8. $ git commit -m"我的修改"
  9. 推送到远程仓库(比如GitHub)
  10. $ git push origin xxxxxx

补充: git rm

查看git rm的说明文档:

$ git rm -h

用法:git rm [<选项>] [--] <文件>...

-n, --dry-run         演习

-q, --quiet           不列出删除的文件

--cached              只从索引区删除

-f, --force           忽略文件更新状态检查

-r                    允许递归删除

--ignore-unmatch      即使没有匹配,也以零状态退出

转git的使用的更多相关文章

  1. Git 子模块 - submodule

    有种情况我们经常会遇到:某个工作中的项目需要包含并使用另一个项目. 也许是第三方库,或者你 独立开发的,用于多个父项目的库. 现在问题来了:你想要把它们当做两个独立的项目,同时又想在 一个项目中使用另 ...

  2. Git 在团队中的最佳实践--如何正确使用Git Flow

    我们已经从SVN 切换到Git很多年了,现在几乎所有的项目都在使用Github管理, 本篇文章讲一下为什么使用Git, 以及如何在团队中正确使用. Git的优点 Git的优点很多,但是这里只列出我认为 ...

  3. Git与Repo入门

    版本控制 版本控制是什么已不用在说了,就是记录我们对文件.目录或工程等的修改历史,方便查看更改历史,备份以便恢复以前的版本,多人协作... 一.原始版本控制 最原始的版本控制是纯手工的版本控制:修改文 ...

  4. Git Bash的一些命令和配置

    查看git版本号: git --version 如果是第一次使用Git,你需要设置署名和邮箱: $ git config --global user.name "用户名" $ gi ...

  5. 在Ubuntu 16.10 安装 git 并上传代码至 git.oschina.net

    1. 注册一个账号和创建项目 先在git.oschina.net上注册一个账号和新建一个project ,如project name 是"myTest". 2.安装git sudo ...

  6. 史上最详细git教程

    题外话 虽然这个标题很惊悚,不过还是把你骗进来了,哈哈-各位看官不要着急,耐心往下看 Git是什么 Git是目前世界上最先进的分布式版本控制系统. SVN与Git的最主要的区别 SVN是集中式版本控制 ...

  7. [版本控制之道] Git 常用的命令总结(欢迎收藏备用)

    坚持每天学习,坚持每天复习,技术永远学不完,自己永远要前进 总结日常开发生产中常用的Git版本控制命令 ------------------------------main-------------- ...

  8. 【解决方案】Myeclipse 10 安装 GIT 插件 集成 步骤 图解

    工程开发中,往往要使用到集成GIT ,那么下面说说插件安装步骤 PS:以Myeclipse 10 为例,讲解集成安装步骤. ----------------------main------------ ...

  9. git 命令

    切换仓库地址: git remote set-url origin xxx.git切换分支:git checkout name撤销修改:git checkout -- file删除文件:git rm  ...

  10. git亲测命令

    一.Git新建本地分支与远程分支关联问题 git checkout -b branch_name origin/branch_name 或者 git branch --set-upstream bra ...

随机推荐

  1. [No0000174]Spring常用注解(收藏大全)

    Spring部分 1.声明bean的注解 @Component 组件,没有明确的角色 @Service 在业务逻辑层使用(service层) @Repository 在数据访问层使用(dao层) @C ...

  2. java高级精讲之高并发抢红包~揭开Redis分布式集群与Lua神秘面纱

    java高级精讲之高并发抢红包~揭开Redis分布式集群与Lua神秘面纱 redis数据库 Redis企业集群高级应用精品教程[图灵学院] Redis权威指南 利用redis + lua解决抢红包高并 ...

  3. [administrator][netctl] 给未插线未UP端口设置IP

    以下内容均为使用netctl配置工具前提下: 需求: Tstation管理口做日常使用.没有千兆交换.所以加一个一块千兆的卡.这块卡是为了做数据传输专用的. 目前主要就是每周给T7备份使用.但是由于是 ...

  4. 操作系统->数组越界(待完善)

    工作中无意间发现了一段可能存在数组越界的代码, 就在本地仿者写了一段越界的小程序, 先记录下,待以后看操作系统知识的时候,再深入分析 #include <stdio.h> #include ...

  5. panda核心数据结构

    Series Series是一维带标签的数组,数组里可以放任意的数据(整数.浮点数.字符串.python Object)等等 创建函数: (1)s = pd.Series(data,index=ind ...

  6. Python+Flash+NodeJS 接口自动化平台

    一.前端安装步骤# manager-web(1)下载项目 git clone https://github.com/t880216t/manager-web.git (2) 安装依赖 cnpm ins ...

  7. git 用远程覆盖本地

    git fetch --all git reset --hard origin/master

  8. Python文件操作---正斜杠与反斜杠

    Python中的正斜杠与反斜杠 首先,"/"左倾斜是正斜杠,"\"右倾斜是反斜杠,可以记为:除号是正斜杠一般来说对于目录分隔符,Unix和Web用正斜杠/,Wi ...

  9. $(document).ready()方法和window.onload有什么区别?

    ①.window.onload 方法是在网页中所有的元素(包括元素的所有关联文件)完全加载到浏览器后才执行的: ②.$(document).ready()方法可以在DOM载入就绪时就对其进行操纵,并调 ...

  10. python练习题-day6

    1.老男孩好声⾳选秀⼤赛评委在打分的时候呢, 可以进⾏输入. 假设, 老男孩有10个评委. 让10个评委进⾏打分, 要求, 分数必须⼤于5分, ⼩于10分. pingwei=["a" ...