标签:
-
$ git
-
usage: git [--version] [--help] [-C <path>] [-c name=value]
-
[--exec-path[=<path>]] [--html-path] [--man-path] [--info-path]
-
[-p | --paginate | --no-pager] [--no-replace-objects] [--bare]
-
[--git-dir=<path>] [--work-tree=<path>] [--namespace=<name>]
-
<command> [<args>]
-
-
These are common Git commands used in various situations:
-
-
start a working area (see also: git help tutorial)
-
clone Clone a repository into a new directory
-
init Create an empty Git repository or reinitialize an existing one
-
-
work on the current change (see also: git help everyday)
-
add Add file contents to the index
-
mv Move or rename a file, a directory, or a symlink
-
reset Reset current HEAD to the specified state
-
rm Remove files from the working tree and from the index
-
-
examine the history and state (see also: git help revisions)
-
bisect Find by binary search the change that introduced a bug
-
grep Print lines matching a pattern
-
log Show commit logs
-
show Show various types of objects
-
status Show the working tree status
-
-
grow, mark and tweak your common history
-
branch List, create, or delete branches
-
checkout Switch branches or restore working tree files
-
commit Record changes to the repository
-
diff Show changes between commits, commit and working tree, etc
-
merge Join two or more development histories together
-
rebase Forward-port local commits to the updated upstream head
-
tag Create, list, delete or verify a tag object signed with GPG
-
-
collaborate (see also: git help workflows)
-
fetch Download objects and refs from another repository
-
pull Fetch from and integrate with another repository or a local branch
-
push Update remote refs along with associated objects
-
-
‘git help -a‘ and ‘git help -g‘ list available subcommands and some
-
concept guides. See ‘git help <command>‘ or ‘git help <concept>‘
-
to read about a specific subcommand or concept.
-
macdeMacBook-Pro:~ Artron_LQQ$
如果未安装,则会输出:
-
$ git
-
The program ‘git‘ is currently not installed. You can install it by typing:
-
sudo apt-get install git
按照提示输入:sudo apt-get install git即可安装!!或者到此处下载:git下载, pkg包下载完成,双击安装。
输入命令:git --version 可查看当前git版本
-
$ git --version
-
git version 2.5.4 (Apple Git-61)
-
macdeMacBook-Pro:~ Artron_LQQ$
当然,网上也有一些安装git的途径,可自行学习...
二.安装后需要一些配置
配置用户名和邮箱:
-
$ git config --global user.name "Your Name"
-
$ git config --global user.email "email@example.com"
使用 --global 修饰后设置的全局的用户,如果设置单个项目的用户,可cd到项目根目录下,执行如下命令:
-
$ git config user.name "Your Name"
-
$ git config user.email "email@example.com"
使用命令:git config --list 可查看当前用户信息以及其他的一些信息
-
$ git config --list
-
core.excludesfile=/Users/mac/.gitignore_global
-
difftool.sourcetree.cmd=opendiff "$LOCAL" "$REMOTE"
-
difftool.sourcetree.path=
-
mergetool.sourcetree.cmd=/Applications/SourceTree.app/Contents/Resources/opendiff-w.sh "$LOCAL" "$REMOTE" -ancestor "$BASE" -merge "$MERGED"
-
mergetool.sourcetree.trustexitcode=true
-
http.postbuffer=524288000
-
https.postbuffer=524288000
-
user.email=你的邮箱@qq.com
-
user.name=你的用户名
-
macdeMacBook-Pro:~ Artron_LQQ$
三.建立本地git仓库
1. cd到你的项目目录
-
$ cd /Users/mac/Desktop/GitTest
2. 然后,输入git命令:
输出如下:
-
$ git init
-
Initialized empty Git repository in /Users/mac/Desktop/GitTest/.git/
创建了一个空的本地仓库.
3.将项目的所有文件添加到缓存中:
git add . (注意,后面有个点)表示添加目录下所有文件到缓存库,如果只添加某个文件,只需把 . 换成你要添加的文件名即可;
4.将缓存中的文件Commit到git库
git commit -m "添加你的注释,一般是一些更改信息"
下面是第一次提交时的输出:
-
$ git commit -m "添加项目"
-
[master (root-commit) 3102a38] 添加项目
-
18 files changed, 1085 insertions(+)
-
create mode 100644 GitTest.xcodeproj/project.pbxproj
-
create mode 100644 GitTest.xcodeproj/project.xcworkspace/contents.xcworkspacedata
-
create mode 100644 GitTest.xcodeproj/project.xcworkspace/xcuserdata/Artron_LQQ.xcuserdatad/UserInterfaceState.xcuserstate
-
create mode 100644 GitTest.xcodeproj/xcuserdata/Artron_LQQ.xcuserdatad/xcschemes/GitTest.xcscheme
-
create mode 100644 GitTest.xcodeproj/xcuserdata/Artron_LQQ.xcuserdatad/xcschemes/xcschememanagement.plist
-
create mode 100644 GitTest/AppDelegate.h
-
create mode 100644 GitTest/AppDelegate.m
-
create mode 100644 GitTest/Assets.xcassets/AppIcon.appiconset/Contents.json
-
create mode 100644 GitTest/Base.lproj/LaunchScreen.storyboard
-
create mode 100644 GitTest/Base.lproj/Main.storyboard
-
create mode 100644 GitTest/Info.plist
-
create mode 100644 GitTest/ViewController.h
-
create mode 100644 GitTest/ViewController.m
-
create mode 100644 GitTest/main.m
-
create mode 100644 GitTestTests/GitTestTests.m
-
create mode 100644 GitTestTests/Info.plist
-
create mode 100644 GitTestUITests/GitTestUITests.m
-
create mode 100644 GitTestUITests/Info.plist
或者不添加注释 git commit ,但是这样会进入vim(vi)编辑器
-
# Please enter the commit message for your changes. Lines starting
-
# with ‘#‘ will be ignored, and an empty message aborts the commit.
-
# On branch master
-
# Changes to be committed:
-
# modified: LQQCircleShowImage.xcodeproj/project.pbxproj
-
# modified: LQQCircleShowImage/TableViewCell.m
-
#
-
~
-
~
-
~
-
~
-
~
-
~
-
~
-
~
-
~
-
~
-
~
-
~
-
~
-
~
-
~
-
"~/Desktop/LQQCircleShowImage/.git/COMMIT_EDITMSG" 8L, 292C
在这里可以输入更改信息,也可以不输入,然后 按住 shift + : ,输入wq 即可保存信息并退出vim编辑器;
四,建立远程库
在一些代码托管平台创建项目,例如github或者开源中国社区,这里已开源中国社区为例;
创建项目后,会生成一个HTTPS链接,如下:
五,将本地的库链接到远程库
终端中输入: git remote add origin HTTPS链接
-
$ git remote add origin https:
六.上传代码到远程库,上传之前最好先Pull一下,再执行命令: git pull origin master
输出:
-
$ git pull origin master
-
warning: no common commits
-
remote: Counting objects: 3, done.
-
remote: Total 3 (delta 0), reused 0 (delta 0)
-
Unpacking objects: 100% (3/3), done.
-
From https:
-
* branch master -> FETCH_HEAD
-
* [new branch] master -> origin/master
-
Merge made by the ‘recursive‘ strategy.
-
README.md | 1 +
-
1 file changed, 1 insertion(+)
-
create mode 100644 README.md
即pull成功,
七.接着执行:git push origin master
完成后输出:
-
$ git push origin master
-
Counting objects: 34, done.
-
Delta compression using up to 4 threads.
-
Compressing objects: 100% (29/29), done.
-
Writing objects: 100% (34/34), 15.63 KiB | 0 bytes/s, done.
-
Total 34 (delta 3), reused 0 (delta 0)
-
To https:
-
5e2dda1..537ecfe master -> master
即将代码成功提交到远程库!!!
接着到你的远程库查看,提交前:
提交成功后:
注意:操作的时候,指令不要输错了!!!!
下面这个是输错了 orgin的输出:
-
git pull orgin master
-
fatal: ‘orgin‘ does not appear to be a git repository
-
fatal: Could not read from remote repository.
-
-
Please make sure you have the correct access rights
-
and the repository exists.
正确的应该是origin!!
如果在push的时候有如下输出:
-
$ git push -u origin master
-
To https:
-
! [rejected] master -> master (fetch first)
-
error: failed to push some refs to ‘https://git.oschina.net/liuqiqiang/LQQCircleShowImage.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.
看提示可知道,需要先pull一下,即执行一次:git pull origin master
然后再执行:git push origin master
分支管理
新建分支
查看分支
输出:
*代表当前所在的分支
切换分支
-
$ git checkout new branch
输出
-
Switched to branch ‘newbranch‘
切换后可用git branch查看是否切换到当前分支
提交改动到当前分支
-
$ git add .
-
$ git commit -a
可使用git status查看提交状态
接着切回主分支
输出:
-
Switched to branch ‘master‘
将新分支提交的改动合并到主分支上
输出:
-
Updating cc73a48..93a1347
-
Fast-forward
-
GitTest.xcodeproj/project.pbxproj | 9 +++++++++
-
.../UserInterfaceState.xcuserstate | Bin 0 -> 7518 bytes
-
GitTest/test.h | 13 +++++++++++++
-
GitTest/test.m | 13 +++++++++++++
-
4 files changed, 35 insertions(+)
-
create mode 100644 GitTest.xcodeproj/project.xcworkspace/xcuserdata/Artron_LQQ.xcuserdatad/UserInterfaceState.xcuserstate
-
create mode 100644 GitTest/test.h
-
create mode 100644 GitTest/test.m
这里我提交了两个文件,即:test.h和test.m
如果合并后产生冲突,可输入以下指令查看冲突:
修改之后,再次提交即可;
接下来,就可以push代码了:
-
$ git push -u origin master
这时可能需要你输入你的github用户名和密码,按照提示输入即可;
删除分支
-
$ git branch -D newbranch
输出
-
Deleted branch newbranch (was 93a1347).
分支管理相关资料:http://gitbook.liuhui998.com/3_3.html
使用Command Line(终端)提交代码到远程库
标签:
原文地址:http://blog.csdn.net/helloworld183/article/details/51329503