User:Cristinac/UsingGIT

From XPUB & Lens-Based wiki
Wiki in a folder

network Collaboration

Git 
can use email or peer to peer

Static files are great, but MySql and PHP will slow down the server

git basic commands:

git init
git status
ls -a    (access all content including hidden files)
ls .git
git add git.mediawiki
git commit -m “message_goes_here”

:q =to quit something, especially when committing

to initialize git: git init
to change commitments in the past: git commit --amend --reset-author -m "this is a wikipedia entry”

you can also use “diff"



commit ceaf8d629e2babe38dc75d2a0f0ac42fe36545e1  =the cryptographic hashes that you commit


Hosting identity:
	-ssh (secure shell protocol)
Git identity:
	-add
	-commit
	-pull	
	-push

to become a server:
	-sudo aptitude install openssh-server
	-sudo add user git 
	-sudo ifconfig


to share a repo in git:
	-create “bare” copy
	-copy it to the server
	-clone it from server
	-back up one level (you are back on your own user)
	-write:
	-git clone --bare wiki wiki.git
	-scp -r wiki.git git@145.24.143.42:
	where “-r” is used to copy folders
	scp is “secure copy”

to make a text file:
	-touch file.txt

to pull from git:
	-git clone git@145.24.143.42:wiki.git


PART II

ssh git@pzwart1.wdka.hro.nl
password: wikiinafolder



installing a repo:
	-you need a “bare” repo: git clone —bare wiki wiki.git
	-copy to the server: scp -r wiki.git git@pzwart1:git
	-clone from the server: git clone git@pzwart1:git/wiki.git


content based approach to managing files

to redirect to the current folder:
	-first check which one the origin is:
	cd wiki
	git status
	git remote -v
	(for help: git remote —help)
	-change origin to current server address:
	git remote set-url origin git@pzwart1.wdka.hro.nl:git/wiki.git
	-now check:
	git remote -v


if we are on the same subnet, static or dynamic, we can see each other
IP addresses:
there is a subnet mask (last 2 digits of the IP number)

Gateway:
a router that connects different networks together by having a protocol to connect different routings together

DNS:

DHTP:

wget --random-wait -r -p -e robots=off -U mozilla http://conceptlab.com/criticalmaking/
brew install ssh-copy-id



source->html->web server

interface to see history: OSP, source tree, gollum 

pandoc --from mediawiki --to html git.mediawiki



pandoc --to markdown aabcdde.docx -o abcde.md
pandoc --from markdown --to html abode.md --standalone -o abcde.html
git untracked.



for debian to use pandoc install:
haskell-platform

Wiki in a folder part II

when using makefiles: don’t use spaces, use indentation: 
--command \
--command \
make is installed already in the system
write all recipes in the makefile 


you will find all files in cristinacochior>gitparttwo

ls -hl
tells you the timestamp of when it was edited



touch notebook.md 
changes the timestamp

make
will take only the first rule

web publishing workflow:
	hooks are shell scripts that update themselves when something is pushed to 
	you can only push to a bare repository
	we push to the prime/origin, you have a hook that makes it move into it when you pull
	this must be done while you are in the server
	hub=bare repository
	prime=public server=origin

combining repositories:	
	go into the bare repository (doesn’t have anything but the hooks in it), go into hooks folder
	exec git update-server-info
	cd /home/git/


emacs is the server editor. to exit use: control+x+c (not simultaneously)

chmod +x script



To create a repo on the server, ssh into the server first, then:
	*cristina@pzivm01:~$ mkdir test_repo.git
	*cristina@pzivm01:~$ cd test_repo.git/

	*cristina@pzivm01:~/test_repo.git$ git --bare init



then, from your local user, in the folder that you want to save it in:
	*git clone cristina@pietzwart1.wdka.hro.nl:git/repo.git
	*from there you can add, commit, status, push


then return to user and cd into the public folder:
	*git clone ~/git/repo.git/

then exit, go into git repo, more specifically in the hooks folder:
	*cp post-update.info post-update
	*nano post-update
	*in the file, erase all that is in it and replace with:

#!/bin/sh 
# 
# An example hook script to prepare a packed repository for use over # dumb transports. 
# 
# To enable this hook, rename this file to "post-update”. 
# exec git update-server-info 
echo 
echo "**** Pulling changes into Prime [Hub's post-update hook]" echo cd $HOME/public_html/repo || exit unset GIT_DIR 
 git pull origin master 
exec git-update-server-info

	*to test: ./post-update


	

http://pzwart1.wdka.hro.nl/~cristina/repo/




Wiki API