Cloning a Repository from the Command Line with Bonobo Git Server

I recently set up Bonobo Git Server on a Windows Server running IIS.

I implemented Windows Authentication for the Bonobo Web interface as per the instructions on the Bonobo site.

I created a repository called “Test” using the Web interface, which — assuming you use the folder names in the instructions — is at http://servername/Bonobo.Git.Server.Interface.

However, when trying to clone the Test repository at the command line, I was getting nowhere when putting in the username as “domain\username”, as is the usual convention in Windows.

The URL for cloning this repository using “git clone” is http://servername/Bonobo.Git.Server/Test.git. By entering the username as “username@domain” (all lowercase, no quotes) at the username prompt, and entering the user’s password at the password prompt, I was able to clone the repository.

While I did not try this, I think http://username@domain@servername/Bonobo.Git.Server/Test.git as the URL should work as well.

Creating a Table on Oracle Database with an Identity Column

UPDATE: I was informed by an Oracle Database expert that starting with Oracle 12c, you can indeed have an identity column, and no trigger or sequence is required. The below post still applies to Oracle 11g and older.

If most of your database experience is with SQL Server (as mine is), you’re probably used to creating tables there with IDENTITY columns. For example:

CREATE TABLE [dbo].[tbl_Example](
	[unique_key] [int] PRIMARY KEY IDENTITY(1,1),
	[AuthUser] [varchar](50) NOT NULL,
	[AccessType] [varchar](50) NOT NULL,
	[SiteGrp] [varchar](50) NOT NULL,
	[Approval] [varchar](1) NULL,
	[EmailAddr] [varchar](50) NULL
);

If you wanted to create a table with the same attributes in Oracle, you must remember that there is no IDENTITY modifier. Instead, you must create a trigger that will fire before an insert to generate the equivalent of the IDENTITY value. However, before creating the trigger, you must create a sequence that will hold the numeric value that will be inserted by the trigger.

The table creation statement above, translated for Oracle usage, would look like this:

CREATE TABLE TBL_EXAMPLE(
	unique_key NUMBER PRIMARY KEY,
	AuthUser VARCHAR(50) NOT NULL,
	AccessType VARCHAR(50) NOT NULL,
	SiteGrp VARCHAR(50) NOT NULL,
	Approval VARCHAR(1) NULL,
	EmailAddr VARCHAR(50) NULL
);

CREATE SEQUENCE "SEQ_EXAMPLE" MINVALUE 1 MAXVALUE 9999999999999999999999999999 INCREMENT BY 1;

CREATE OR REPLACE TRIGGER "TRG_EXAMPLE" BEFORE
  INSERT ON "TBL_EXAMPLE" FOR EACH ROW BEGIN
  SELECT SEQ_EXAMPLE.NEXTVAL INTO :NEW.unique_key FROM DUAL;
END;