-
git數(shù)據(jù)流轉(zhuǎn)
目錄
工作區(qū)(working)
暫存區(qū)(Index)
當(dāng)前分支(HEAD)git安裝
windows版本卜壕,在下面網(wǎng)址下載最新版安裝創(chuàng)建新倉庫
git init執(zhí)行如下命令以創(chuàng)建一個(gè)本地倉庫的克隆版本:
git clone /path/to/repository如果是遠(yuǎn)端服務(wù)器上的倉庫呈野,你的命令會(huì)是這個(gè)樣子:
git clone https://git-codecommit.ap-northeast-1.amazonaws.com/v1/repos/dynabiz-dev2
或者別的服務(wù)器上的資源
git clone username@host:/path/to/repository變更提交到暫存區(qū)(Index)
git add <filename>
或者git add *
或者git add .
代碼有變更就可以隨時(shí)執(zhí)行這個(gè)命令,主要目的是將變更管理起來印叁。代碼提交到HEAD分支(一般默認(rèn)為master)
這一步是將代碼入庫。
git commit -m "代碼提交信息"本地代碼版本管理到這一步完成。下一步想要保留到云服務(wù)器轮蜕。
git push origin master
前提是本地【.git】已經(jīng)跟遠(yuǎn)程庫連接昨悼。
git remote add origin https://git-codecommit.ap-northeast-1.amazonaws.com/v1/repos/XXXXX-
多人開發(fā),多版本開發(fā)的時(shí)候跃洛,需要進(jìn)行分支控制
創(chuàng)建一個(gè)叫做“feature_x”的分支率触,并切換過去
git checkout -b feature_x
根據(jù)命令執(zhí)行的分支決定新建分支的內(nèi)容。切換回主分支:
git checkout master查看本地分支一覽
git branch
-查看遠(yuǎn)程分支一覽
git branch -r查看所有分支
git branch -a把新建的分支刪掉
git branch -d feature_x
如果當(dāng)前命令執(zhí)行在feature_x下的話汇竭,需要git checkout master 切到別的分支中執(zhí)行
這個(gè)命令是刪除本地的分支葱蝗。如果也想刪除服務(wù)器分支,執(zhí)行以下命令细燎。
git push --delete origin foo
或者
git push origin :foo (origin 后有空格)修改代碼推送到新建分支
git push origin <branch>拉取最新代碼到本地分支
假如我在feature_yang開發(fā)中两曼,需要把master上代碼拉取最新的。
共同開發(fā)時(shí)應(yīng)該幾乎隨時(shí)都要從dev上拉到自己的開發(fā)分支上玻驻。
git pull origin dev
合并代碼
如果在feature_yang下開發(fā)的代碼悼凑,合并到dev分支。
合并前先差分一下璧瞬。
git diff <source_branch> <target_branch>
差分后確定了户辫,開始merge
git checkout dev
在dev下執(zhí)行
git merge feature_yangtag
★查看log
git log-
替換本地文件
將倉庫里的最新版本文件覆蓋本地(假如本地做錯(cuò)了)
git checkout -- <filename>
怎么通過eclipse把開發(fā)工程上傳到遠(yuǎn)程git服務(wù)器上?
查看配置(包含:用戶名和郵箱等)
git config --list配置帳號(hào)
$ git config user.name 'github用戶名'
$ git config user.email '郵箱'
- 如果在一個(gè)電腦上從github上clone代碼嗤锉,可以使用以下命令
git clone -b develop git@github.xxxx/xxxxx.git
如果出現(xiàn)「git@github.com: Permission denied (publickey).」錯(cuò)誤時(shí)渔欢,說明本地電腦的公鑰沒有保存在github上。
需要本地生成密鑰瘟忱,然后將密鑰的內(nèi)容貼到github上奥额。
這樣,本地電腦就和github有了一個(gè)安全認(rèn)證酷誓。
具體命令如下:
? workspace [master] ? cd ~/.ssh //命令1:進(jìn)入home目錄的.ssh中
? .ssh [master] ? ssh-keygen -t rsa //命令2:生成證書
Generating public/private rsa key pair.
Enter file in which to save the key (/Users/xxx/.ssh/id_rsa): //回車
Enter passphrase (empty for no passphrase)://回車
Enter same passphrase again://回車
Your identification has been saved in /Users/xxx/.ssh/id_rsa.
Your public key has been saved in /Users/xxx/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:FmxyrDG5grBaErr6gQfmi8AYX9QYQAr+GTN4JogaHHg XXXXX@XXXXX.local
The key's randomart image is:
+---[RSA 2048]----+
|ooo.. |
|B.E + + |
|B* *o * * |
|o==o= O . |
|B.ooo o S |
|*O . . . |
|*o+ |
|+... |
|oo. |
+----[SHA256]-----+
? .ssh [master] ? cat id_rsa.pub
ssh-rsa XXXXXX XXXXX@XXXXX.local →拷貝這一段貼到github的「
SSH and GPG keys」的新作項(xiàng)目中